我的查询列出了查询中最受欢迎的16个项目:
SELECT X, Y, Z FROM TABLE ORDER BY PCS DESC LIMIT 16
当我添加
SELECT X, Y, Z FROM TABLE ORDER BY PCS DESC, RAND() LIMIT 16
只有具有相同PCS值的项目是随机排序的。因此,如果PCS值为3,2,2,2,1,1,1,1 ...那么第一个带3的项始终是第一个,那么PCS值为2的三个项随机排序然后其余的
如何以随机顺序查询这16行?
答案 0 :(得分:0)
更改:
SELECT X, Y, Z FROM TABLE ORDER BY PCS DESC, RAND() LIMIT 16
致:
SELECT * FROM
( SELECT X, Y, Z FROM TABLE ORDER BY PCS DESC LIMIT 16 ) results
ORDER BY RAND();