私は3つのテーブル:グループ、ユーザー、および投稿を持っています。投稿にはuser_idがあり、ユーザーにはgroup_idがあります。私はどのグループに日付範囲の間にトップポスターがあるのかを知りたいのですが、ActiveRecordを使うのが望ましいです。私は、このクエリは仕事をしないと思う:これをrails arelクエリに変換する方法はありますか?または、このクエリを実行するためのより良い方法は?
select g_id, count(p_id) as posts_count
from (
select users.group_id as g_id, posts.id as p_id
from users inner join posts
on users.id = posts.user_id
where users.group_id is not null
and posts.created_at > :since
and posts.created_at <= :until
) as foo
group by g_id
order by posts_count desc limit 1;
は、誰かが私はルビーためにそれを翻訳手伝ってくれるか?