mysql 的SELECT语句,可以间隔着取值吗?

mysql 的SELECT语句,可以间隔着取值吗?,第1张

你不是有id这一项吗,那你可直接指定id的范围啊,也就是

SELECT * FROM t WHERE (id >10 and id <16 ) or (id>61 and id <65)

语句是有的, 不过运算量较大, 如下, 测试通过

SELECT * from (Select id,(@rowNum:=@rowNum+1) as rowNo From t_user, (Select (@rowNum :=0) ) b order by id asc) as a where mod(a.rowNo, 3) = 1

Select id,(@rowNum:=@rowNum+1) as rowNo From t_user, (Select (@rowNum :=0) ) b order by id asc

这一句是先查结果集, 为每条纪录赋一个行号,

再从该结果集中对行号取余 mod(a.rowNo, 3) = 1

LZ的情况直接用, mod(a.rowNo, 50) = 1 就可以了, 不过无法保证效率


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7270050.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存