MySQL-mysql 如何在limit函数中传入查询的结果数量?
我想把从一个表中查询的一个结果数量 作为limit 的offset ,但是limit后是无法使用子查询的,想要的结果类似下边的sql:
SELECT * FROM `test` limit (select count(*) from tab where userId < 2),5;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
用存储过程来实现,代码如下:
PREPARE sqlTmp FROM 'SELECT * FROM test limit ?,1'
SET @a=(select count(*) from tab where userId < 2);
EXECUTE sqlTmp USING @a;
测试通过:
SET @start = 1;
SELECT * FROM software WHERE `id` BETWEEN (select @start:=count(*) from category where `pid`>0) AND (@start+5);