sql语句是否可以随机选择制定的数据

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

谢谢诶~

阅读 3.7k
3 个回答

SELECT *, rand() '_RAND' FROM XXX_TABLE ORDER BY _RAND LIMIT 0,200;
使用rand()生成随机数排序,取出前200条。

那你就选出200条 但不能随机不吧。可以用分页的思想一样 mysql limit x,x+200 oralce where rownum<x+200 ) where rownum>x;

类似这样子的试试吧

SELECT * FROM users WHERE userId >= ((SELECT MAX(userId) FROM users)-(SELECT MIN(userId) FROM users)) * RAND() + (SELECT MIN(userId) FROM users)  LIMIT 200
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题