选择Rails中列中具有最高值的记录

时间:2016-10-26 00:56:12

标签: ruby-on-rails ruby postgresql

我有一个名为' frequency'在我的数据库中。我想选择频率更高的特定类别的记录。就像会有5个相同类别的记录,但每个记录可能有不同的频率。在所有这5条记录中,我希望记录的频率值更高。

说,

记录1频率值= 10
记录2频率值= 20
记录3频率值= 30
记录4频率值= 10
记录5频率值= 50
我想记录5作为我的输出。

感谢。

2 个答案:

答案 0 :(得分:4)

尝试这样做

Record.where(category: 'animal').maximum("value")

或者你可以试试这个

Record.where(category: 'animal').order("value DESC").first

# 1
Record.where(category: :animal).order(value: :desc).first

# 2
Record.where(category: :animal).order(:value).last

答案 1 :(得分:2)

YourModelName.order("frequency DESC").first