Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从MySQL中限制为1000行的子查询中选择ID_Mysql_Sql_Subquery - Fatal编程技术网

从MySQL中限制为1000行的子查询中选择ID

从MySQL中限制为1000行的子查询中选择ID,mysql,sql,subquery,Mysql,Sql,Subquery,我想使用另一个表的最后1000个ID从另一个表中选择1000行。这是查询,但它返回了一条错误消息。我在这个问题上做错了什么 SELECT * FROM table1 WHERE id IN ( SELECT id FROM table2 LIMIT 50 ) 收到错误消息 Error Code : 1235 This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery' 这样做更容易: SELE

我想使用另一个表的最后1000个ID从另一个表中选择1000行。这是查询,但它返回了一条错误消息。我在这个问题上做错了什么

SELECT * FROM table1
WHERE id IN
(
SELECT id FROM table2
LIMIT 50
)
收到错误消息

Error Code : 1235
This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'

这样做更容易:

SELECT * FROM TBL1, TBL2 
WHERE TBL2.FK_ID = TBL1.ID 
ORDER BY TBL2.ID
    ASC LIMIT 0,1000
只有在第二个表将table1的id作为外键,但仍有自己的id标识创建它们的顺序时,才能执行此操作

但不确定如何使用限制


我希望这能有所帮助。

您应该将两个表合并,按降序排序,然后应用限制

SELECT * 
  FROM table1 x
  JOIN 
     ( SELECT id FROM table2 ORDER BY id LIMIT 50 ) y
    ON y.id = x.id;
SELECT table1.* FROM table1
 JOIN table2 USING (id)
 ORDER BY id DESC
 LIMIT 1000;

这将为您提供1000个具有最高IDI降序的条目,当且仅当两个表中都存在这些条目时

在任何情况下,在没有clasue的订单的情况下,限制几乎是没有意义的。我看不出有什么帮助,甚至是正确的。@草莓我不确定我是否遵守了。我了解到他正在寻找1000行,其中a在表2中具有最高ID,b在表1中具有相应的行。我将结果集更改为只包含表1中的行。嗯,很公平-事实上,您的逻辑可能比我的好。道歉。