本文共 303 字,大约阅读时间需要 1 分钟。
SET @a=(SELECT FLOOR(RAND() *(SELECT COUNT(*) FROM table_a)/10000)); # 取随机页
SELECT b.*
FROM ( SELECT recordid FROM ( SELECT recordid FROM table_a LIMIT @a,10000 # 取随机页id, # 此处注意,limit 只能用常量,所以@a传递不了。只能和上面查询分别执行两次 ) AS a ORDER BY RAND() LIMIT 10 #页内二次随机 ) a JOIN table_a b #取数据 ON a.recordid=b.recordid ;转载地址:http://hpfmi.baihongyu.com/