我需要查询数据库表并获取按关联计数排序的行。是否有Rails(如Active Record Query)这样做?
我的模型及其关联如下:
class User < ActiveRecord::Base
has_one :business
end
class Business < ActiveRecord::Base
has_many :postulations
end
class Postulation < ActiveRecord::Base
belongs_to :business
end
我需要按照其业务所拥有的假设数量来订购一些用户。有没有一种干净的方法可以做到这一点,或者我只需要查询find_by_sql?
谢谢。
答案 0 :(得分:2)
User.includes(:business => :postulations).group("users.id").order("count(postulations.id) desc").limit(20)
这可能会起作用