2015-11-16 147 views
1

我有一個表Person的ActiveRecord(:id,:name,:city_id,:work_id,:date)的數組。例如:選擇在列表中具有最大列值的行

[<Person id: 4, name: John, city_id: 10, work_id: 1, date: 2015-10-10>, 
    <Person id: 5, name: Jack, city_id: 11, work_id: 2, date: 2015-10-08>, 
    <Person id: 8, name: John, city_id: 10, work_id: 2, date: 2015-10-11>, 
    <Person id: 9, name: John, city_id: 10, work_id: 3, date: 2015-10-11>,] 

對於某個特定的人,我希望有最大日期的行。所以,對於Jack,我會得到id = 5的行。對於John,我會得到id = [8,9]的行,因爲日期對於這些行是最大的。我無法找出一種有效的方法來在Rails中進行此操作。請幫忙。

回答

1

您可以使用maximum類的rails方法。

試試這個:

Person.find_all_by_date(self.maximum( '日'))

看到一些細節here.

+0

我不想最大數值的日期。我希望每個不同的人在其所有行中的最大日期的所有行。 – Hellboy

+0

我想操作一個ActiveRecord數組,即包含表Person行的數組。 – Hellboy

+0

你爲什麼要使用數組?你能否提供一些關於你的問題的更多信息?我假設你想知道某個特定城市的特定人物所做的最後一件作品? –

相關問題