MySQL5.1中子查询是不能使用LIMIT的,报错: "This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery' "
这样的语句是不能正确执行的。
select * from message where id in (select id from message order by id desc limit 10);
但是,只要你再来一层就行。如:
select * from message where id in(select m.id from (select * from message order by id desc limit 10) as m) order by id asc
这样就可以绕开limit子查询的问题。
本文介绍在MySQL5.1中如何解决LIMIT与子查询结合使用的限制问题,并提供了一个有效的解决方案。
10万+

被折叠的 条评论
为什么被折叠?



