我一直在使用允许检索给定组中具有最高 id 的记录的范围。我最近更改了将记录添加到数据库的方式,因此具有最高 id 的记录不一定是具有最新数据的记录;那将是最高的记录:end_time。
scope :latest_record_in_group, unique.select('max(id) as id')
其中 unique 如下:
scope :unique, group(:field_1, :field_2, :field_3, :field_4)
现在我需要的是选择具有最高 :end_time 的记录的 id,我很困惑。似乎我无法更改 activeRecord 如何决定组中的哪些记录被选为该组的代表。就目前而言,它似乎是默认情况下具有最高 :id 的记录。任何关于如何选择最高 :end_time 记录的见解将不胜感激。
编辑:消歧