需求描述如下:现在数据库中符合条件的记录有1000条,我要随机抽出其中的200条来完成测试工作,我想直接用sql语句实现,而不是选出1000条,再用java来过滤选出其中的200条,有没有这样的sql语句可以实现这样的功能呢??谢谢诶~
3 回答

智慧大石
TA贡献1946条经验 获得超3个赞
SELECT *, rand() '_RAND' FROM XXX_TABLE ORDER BY _RAND LIMIT 0,200;
使用rand()
生成随机数排序,取出前200条。

胡说叔叔
TA贡献1804条经验 获得超8个赞

桃花长相依
TA贡献1860条经验 获得超8个赞
类似这样子的试试吧
SELECT * FROM users WHERE userId >= ((SELECT MAX(userId) FROM users)-(SELECT MIN(userId) FROM users)) * RAND() + (SELECT MIN(userId) FROM users) LIMIT 200
添加回答
举报
0/150
提交
取消