SQL按RAND排序,然后按其他内容排序

时间:2015-07-17 06:23:52

标签: mysql sql sorting random

我正在尝试首先通过RAND获取SQL中的数据,然后通过其他内容订购那些随机提取的项目,例如价格。
我尝试过的方式都没有。

ORDER BY RAND(`parts`.price) DESC LIMIT 6

例如,这一遍又一遍地取出相同的项目。

ORDER BY RAND(),`parts`.price DESC LIMIT 6

这会获取随机项,但不会对它们进行排序。

ORDER BY `parts`.price, RAND() DESC LIMIT 6

这样可以获取相同的项目,而不是随机而非价格。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

回答here可能会帮助你

SELECT * FROM 
(
    SELECT * FROM table_name ORDER BY rand() LIMIT 6
) T1
ORDER BY `parts`.price

基本上你是用第一个查询创建一个临时表,然后对它进行排序。