mysql数据在分页的时候如:select * from user limit 0,5 就是OK的。select * from user limit (1-1)*5,1*5 这种写法就不行。limit后面好像需要一个具体的值,而不是表达式,怎么才能让他支持表达式呢
1 回答
烙印99
TA贡献1829条经验 获得超13个赞
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子查询的问题。
添加回答
举报
0/150
提交
取消