如何在Rails中执行此操作?:
select avg(cnt)
from
(
select
count(*) as cnt
from
sngs s
inner join clbs c on c.id = s.clb_id
where
c.user_id = 35
group by
date(s.record_date)
) sc
这条线
current_user.sngs.joins(:clb).average(“count(*)”,group:“date(record_date)”)
给出错误:
PG::Error: ERROR: aggregate function calls cannot be nested LINE 1: SELECT AVG(count(*)) .............
1 回答
我 didn't test 它,但也许它看起来像这样:
您应该查看Rails指南上的
ActiveRecord
查询界面 . http://guides.rubyonrails.org/active_record_querying.html此链接解释了您应该用于查询的许多方法 .
EDIT
看看
count
,average
,having
,group
并将它们全部链接在一起 .