sql 中的 rand() 函数

select cast( (rand()*N) as int )---随机生成0到N的整数

 

order by rand()--随机抽取数据

但是好像是order by 后面不可以跟rand ,因为这样会导致数据列重复被扫描

一般大家的用法是:

SELECT * FROM tablename ORDER BY rand() LIMIT 100

看了一下,网上还是有很多的优化方式的,暂且不在此举例了,看了一下大家测试,优化后的时间可以缩减到未优化的十分之一以下。

posted @ 2018-12-20 14:46  麦克白的王冠  阅读(1789)  评论(0编辑  收藏  举报