【解析mysql的查询、子查询及连接查询教程】教程文章相关的互联网学习教程文章

更新MySQL查询错误“子查询返回超过1行”【代码】

我正在尝试实现此查询,但我收到一个错误:UPDATE ps_product_lang SET name=(select name from ps_product_lang_backup where id_lang=2) WHERE id_lang = 3但我得到Subquery返回超过1行 可能我必须使用JOIN,但我真的是MySQL的新手,不能自己做. 我想做的很简单:我在我的数据库中有3种语言,希望将数据从一种语言(英语id_lang 2)复制到另一种语言(俄语,id_lang 3)解决方法:我假设该表还有一个product_id列,该列对于产品是唯一的. 您...

mysql – 复杂的子查询 – 这可能吗?【代码】

我有2个表:一个存储标签,另一个存储文章.有一种模式“按标签获取文章”,它基本上采用标记为“x”的所有文章.在我的文章表中,我使用一个名为Tags的字段,以这种模式’tag1,tag2,tag3,…’存储数据. 所以我想通过一个像这样的查询来完成所有工作:SELECT *, (SELECT tagname FROM `tags_table` WHERE tagurn LIKE 'x') as TAGNAME FROM `articles_table` WHERE (Tags LIKE 'TAGNAME,%' OR Tags LIKE '%, TAGNAME' ... and so on)我不...

mysql – 在WHERE-Clause中重用Select Expression中的子查询【代码】

当然不可能写SELECT (some subselect) AS blah FROM t WHERE blah = 'const'做这个的最好方式是什么? > SELECT(some subselect)FROM t WHERE(some subselect)=’const’?>查看?>存储功能?>哈维?>其他?解决方法:你可以移动(一些subselect)作为FROM中的表:SELECT s.blahFROM t, (some subselect) sWHERE t.id = s.idAND s.blah = 'const'

mysql – 如果“子查询返回超过1行”,则将其视为NULL【代码】

我正在尝试将newtable上的商店ID与来自维护者的ID同步:UPDATE newtable t SET t.store_id = (SELECT store_id FROM maintable s WHERE t.state = s.state AND s.city = t.city AND t.name = s.name)每当子查询返回多行时,它就会出现“Subquery返回多于1行”的错误,但是当它返回零行时,子查询被认为没有返回任何内容,因此newtable上的store_id保持为NULL.这里没有什么新东西,它只是它的工作原理. 我想知道是否可以让子查询输出与没...

在MySQL中减慢子查询【代码】

我试图使用CodeIgniter和Datatables.net生成报告. 现在我正在尝试关闭工作量(它是一个人力资源系统).我曾经查询所有的工作,在PHP中做一个foreach,然后进行计算. 因为我想使用Datatables的所有功能(具体排序)我试图在mySQL中完成所有的计算. 问题是:第二个子查询非常非常慢.SELECT jobs.jobs_id, clients.nome_fantasia, concat_ws(' ', user_profiles.first_name, user_profiles.last_name) as fullname, jobs.titulo_vaga, job...

MySQL使用带有2个查询,子查询或连接的select?【代码】

与我的上一个问题(MySQLi performance, multiple (separate) queries vs subqueries)相关,我遇到了另一个问题. 有时我使用子查询从另一个表中选择值(例如,连接到ID的用户名),但我不确定select-in-select,因为它看起来不是很干净我不确定性能. 子查询可能如下所示:SELECT(SELECT `user_name` FROM `users` WHERE `user_id` = table2.user_id) AS `user_name`, `value1`, `value2` FROM`table2` ....对table1的结果使用单独的查询而...

mysql – 左连接带有子查询的三个表【代码】

Check this fiddle for DB and tablesSELECT p.* FROM Products p LEFT JOIN offertran ot ON p.prod_id = ot.prod_id LEFT JOIN Offers o ON ot.offer_id = (SELECT id FROM Offers Where dF<=3 AND dt>=3)ORDER BY o.id DESC, p.prod_id ASC LIMIT 20输出是:| PROD_ID | CATEGORY_ID | PROD_NAME | BRAND | PRICE | STATUS | --------------------------------------------------------------- | p3 | c1 | ...

mysql – 选择子查询【代码】

过去一小时我一直在喋喋不休.. 我想从我的表clickednumbers中获取最新数据的TOP 5 clickednumbers只有列号为INT& numberTime作为时间戳 我的查询SELECT AVG( SELECT *FROM clickednumbersORDER BY numberTime DESCLIMIT 5) FROM clickednumbers而我总是得到错误 #1064 – 您的SQL语法有错误;请查看与您的MariaDB服务器版本对应的手册,以便在附近使用正确的syntanx‘选择 * 来自点击的数字 ORDER BY numberTime DESC’在第1行 Mari...

Firebird到MySQL查询迁移 – 选择内部连接子查询【代码】

我有一个在我们的Firebird SQL数据模块中工作的查询. 我们迁移到MySQL,除了这个,我的所有查询都没有问题. 请帮我解决这个问题.我收到一个错误:Failed to Execute. Unknown column ‘part.id’ in ‘on clause’我的Firebird查询:SELECT vendor.name AS "Vendor Name",Cast(Cast(vendorparts.lastdate AS date) AS CHAR(10)) AS "Last Date",CASE product.priceWHEN '0' THEN 'CONFIRM'WHEN NULL THEN 'CONFIRM'ELSE Round(produc...

mysql – 子查询很慢【代码】

我有一个大约1000万行的mysql表.对于每一行,我都有一个id列和日期列. id列不是唯一的,对于一个id,有多个行具有不同的date值,通常每个id为3-6个日期.我想选择具有最新日期ID的行. 我的查询:SELECT id,date FROM tab a WHERE a.date = (SELECT MAX(date)FROM tab bWHERE a.id=b.id)非常慢,需要几分钟才能完成.感觉这可以更快地完成.这里的最佳做法是什么?解决方法:为什么不呢?SELECT id,MAX(date) date FROM ta...

mysql的查询、子查询及连接查询【代码】【图】

mysql的查询、子查询及连接查询 一、mysql查询的五种子句 where子句(条件查询):按照“条件表达式”指定的条件进行查询。 group by子句(分组):按照“属性名”指定的字段进行分组。group by子句通常和count()、sum()等聚合函数一起使用。 having子句(筛选):有group by才能having子句,只有满足“条件表达式”中指定的条件的才能够输出。 order by子句(排序):按照“属性名”指定的字段进行排序。排序方式由“asc”和“des...

mysql – 使用子查询重复数据删除【代码】

我继承了一个缺乏唯一约束的数据库,因此数据是重复的.我现在正在尝试删除重复的记录,然后添加一个约束来阻止这种情况发生. 我有这个问题:SELECT count(*) as dacount, substr(group_concat(id), (locate(',', group_concat(id))+ 1)) FROM `game` group by matchid, ordinal having dacount > 1 order by dacount desc这正确地给了我需要删除的行的ID.但问题是我不能在DELETE上使用它作为子查询,因为带有having参数的dacount.还有...

mysql – select vs left join中的子查询【代码】

通常,我必须在查询中返回某些行的计数,以获取其他不相关的行. 例如A表用户表格查看和表格图片User: id nicknameReview: id to_user_id from_user_id ratingPicture: id: user_id url假设我想在一个查询中检索“给定”userId的昵称所有其图片网址以及审核该用户的人数. 我在做这个查询时想到的第一个简单的方法是:SELECTu.nickname(SELECT count(*) FROM review WHERE to_user_id = u.id) as reviewCount,p.url FROM user LEFT JOI...

mysql 子查询【代码】

mysql> select * from test; +----+------------+-------+-----------+ | id | name | score | subject | +----+------------+-------+-----------+ | 1 | xiaoming | 89 | shuxue | | 2 | xiaohong | 89 | shuxue | | 3 | xiaohong | 80 | english | | 4 | xiaohong | 80 | physics | | 5 | xiaohong | 80 | astronaut | | 6 | xiaoming | 80 | physics | | 7 | xiaomi...

mysql – 子查询执行一次父查询或更多?【代码】

如果我在where子句中应用静态数据,那么应用子查询会更快.例: (查询返回5条记录作为结果集) 选择STARTDATE,ENDDATE FROM TEST STARTDATE =’2012-08-21′; 比那更快: SELECT STARTDATE,ENDDATE FROM TEST WHERE STARTDATE =(从TEST2 LIMIT 1开始选择STARTDATE); 或者它们在任何情况下是相同的? 每次通过查询与每条记录进行比较或仅进行1次时,子查询会执行吗?解决方法:在MySQL 5.6之前,内部查询在外部行中的每个条目执行一次,并且...