user_actionsに基づいてトピックに参加したユーザーを特定するために、Data Explorerクエリを使用しました。
-- [params]
-- int :topic = 3620561
select user_id,
sum(action_type) actions,
sum(case action_type when 5 then 1 else 0 end) replies
from user_actions ua
join users u on u.id = ua.user_id
where target_topic_id = :topic
and moderator is false
and admin is false
group by ua.user_id
これには、返信、いいね、編集、メンションなどのアクションが含まれます。また、投票の回答を含むクエリもあります。これはリードを収集するためのものでしたが、返信以外の何かをした人のうち、トピックに貢献した人がいると予想しています。「参加した」を定義することは、有益な演習になるでしょう。
カテゴリ全体に拡張するには、topics t on target_topic_id = t.idと結合し、where句にcategory_idを追加します。ua.created_atに基づいて期間を定義するのは難しくないはずです。