需求描述如下:
现在数据库中符合条件的记录有1000条,我要随机抽出其中的200条来完成测试工作,我想直接用sql语句实现,而不是选出1000条,再用java来过滤选出其中的200条,有没有这样的sql语句可以实现这样的功能呢??
谢谢诶~
需求描述如下:
现在数据库中符合条件的记录有1000条,我要随机抽出其中的200条来完成测试工作,我想直接用sql语句实现,而不是选出1000条,再用java来过滤选出其中的200条,有没有这样的sql语句可以实现这样的功能呢??
谢谢诶~
类似这样子的试试吧
SELECT * FROM users WHERE userId >= ((SELECT MAX(userId) FROM users)-(SELECT MIN(userId) FROM users)) * RAND() + (SELECT MIN(userId) FROM users) LIMIT 200
15 回答8.4k 阅读
8 回答6.2k 阅读
5 回答3.2k 阅读✓ 已解决
3 回答3.6k 阅读✓ 已解决
1 回答4k 阅读✓ 已解决
3 回答6k 阅读
2 回答2.8k 阅读✓ 已解决
SELECT *, rand() '_RAND' FROM XXX_TABLE ORDER BY _RAND LIMIT 0,200;
使用
rand()
生成随机数排序,取出前200条。