您好我有两个型号report
和report_day_count
report
有许多report_day_counts
和report_day_count
属于report
,并且有一个名为count
的属性。
我想按报告_day_count计数的总和对报告进行排序,但我不确定如何使用有效记录来执行此操作。
我试过了:
report.joins(:report_day_counts).sum(:count)
但这只是将所有计数加在一起。
答案 0 :(得分:1)
它应该是这样的
Report.joins(:report_day_count).group('report.id').order('SUM(report_day_counts.count')
答案 1 :(得分:1)
尝试以下方法:
Report
.left_outer_joins(:report_day_counts)
.group('reports.id')
.select('reports.*, SUM(report_day_counts.count) AS report_day_counts_sum')
.order('report_day_counts_sum DESC')