我有这个型号:
Event
has_many :incidents
和
Incident
belongs_to :event
我想在一个查询中获取每个事件编号的所有事件。在Rails中我知道存在“分组依据”和“求和”方法,但我不知道如何混合两者。
感谢。
答案 0 :(得分:0)
您需要按对象ID和计数元素进行左连接:
Events.joins('LEFT JOIN incidents ON incidents.event_id = events.id').group_by('events.id').select('events.*, COUNT(incidents.id) AS incidents_count')
您还可以查看counter_cache选项。