【发布时间】:2020-04-18 12:08:10
【问题描述】:
当我运行此查询时,将返回其 id 存在于从 table2 中选择的所有行
SELECT * FROM table1 WHERE id in (
SELECT id FROM table2 where name ='aaa'
)
但是当我在第二个选择中添加限制或之间:
SELECT * FROM table1 WHERE id in (
SELECT id FROM table2 where name ='aaa' limit 4
)
返回此错误:
此版本的 MariaDB 尚不支持“LIMIT & IN/ALL/ANY/SOME 子查询”
【问题讨论】:
-
为什么不把限制放在外层选择?
-
这是因为这个版本的 MariaDB 还不支持'LIMIT & IN/ALL/ANY/SOME subquery'你用的是什么版本?
-
阅读this
-
我正在使用 mariadb 10.3
-
我不能在其他选择中设置限制,因为我的项目中的其他选择是左连接查询并且有很多重复的 id,例如当我限制 10 时,它返回 8 或 1 或 3 或 9 行左表和右表 10 行
标签: sql mariadb mariadb-10.3