Mar*_*tin 1 activerecord ruby-on-rails
我有许多带有featured?
属性的记录.
我想查询所有内容,将它们分组为特色和非特色,如果可能的话,将它们随机分组(随机显示特色组,然后随机显示).
知道如何在ActiveRecord上执行此操作吗?
使用 rand()
MySQL的
SELECT * FROM <TABLE_NAME> ORDER BY featured?, rand()
Run Code Online (Sandbox Code Playgroud)
铁路3
ModelName.order("featured, rand()")
Run Code Online (Sandbox Code Playgroud)
对于Ex: -
id featured
1 true
2 false
3 false
4 true
5 false
6 true
Run Code Online (Sandbox Code Playgroud)
我希望所有的特征值首先为真,然后为假,但是具有真假组的记录的顺序应该是随机的
所以我的代码将是
User.order("featured DESC, rand()")
Run Code Online (Sandbox Code Playgroud)
并生成o/p是(注意: - 可以更改组true/false之间的记录顺序)
id featured
4 true
6 true
1 true
5 false
3 false
2 false
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7071 次 |
最近记录: |