mysql不支持在子查询中使用limit解决办法
Posted 风水师
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql不支持在子查询中使用limit解决办法相关的知识,希望对你有一定的参考价值。
mysql不支持在子查询中使用limit解决办法
This version of MySQL doesn’t yet support ‘LIMIT & IN/ALL/ANY/SOME subquery’
字面意思就是不支持在子查询中使用limit关键字。
经过搜索,找到了替代解决方法。
就是在limit的子查询外层再加一层子查询。
比如:
原先可能是报错的sql语句是:select *from cidy where id in(select id from cidy limit 0,10);
经过修改的sql就是:select *from cidy where id in(select id from(select id from cidy limit 0,10));
经过测试,修改过的sql语句执行时报错:Every derived table must have its own alias
错误的字面意思是:需要别名
从上面的sql语句中可以看到,我们多加的一层sql不仅没有别名更没有表名,会不会在这里出问题呢?测一下就知道了~
经过修改后的sql语句就是:select *from cidy where id in(select id from(select id from cidy limit 0,10)as cd);
经过测试,如我们所想,终于成功了。
以上是关于mysql不支持在子查询中使用limit解决办法的主要内容,如果未能解决你的问题,请参考以下文章