2012-03-30 19 views

回答

10
one_of_oldest_users = User.desc(:age).limit(1).first 

這會讓你以最大年齡的用戶的一個(如果用戶 有幾個)。如果你想得到他們全部,最簡單的方法是使用兩遍。

max_age = User.max(:age) 
oldest_users = User.where(age: max_age) 

# or, if you like one-liners 
oldest_users = User.where(age: User.max(:age)) 

爲了提高這些查詢的效率,當然需要一個索引:age

+0

如果最大年齡是23歲,並且有5歲具有那個年齡,那麼這個失敗。 – 2012-03-30 06:54:28

+0

所以唯一的辦法是整理收集>? – 2012-03-30 06:54:59

+0

@ muistooshort:啊,沒有仔細閱讀。思考...... – 2012-03-30 06:56:50

相關問題