在我的rails应用程序中,我想获取具有唯一值的最后10条记录。
我试过了:
@users = User.all(:limit => 10, :sort => [:created_at, :desc]).map{|t| t.first_name}.uniq
但是,
限制不符合我的预期......
我希望'限制'能够最后影响查询。
任何想法?
答案 0 :(得分:11)
@users = User.desc(:created_at).limit(10).map(&:first_name).uniq
您应该使用distinct
。 uniq
可能会导致您获得少于10条记录。
@users = User.limit(10).distinct(:first_name).desc(:created_at).map(&:first_name)