素晴らしい @michebs – 助けてくれてありがとう!
今日中に似たようなクエリをなんとか作成し始めていたのですが(post_custom_fields テーブルを見つけたときは驚きました)、あなたのクエリの方が最終的にははるかにきれいです。
トピックが直接再割り当てされた場合(解除してから割り当てられたのではなく)に一部のエントリが欠落していることに気づいたので、これを考慮するために WHERE 条件を少し変更しました。最終的に以下のようになりました。
SELECT
pcf.value AS group,
p.topic_id,
p.user_id AS "assigned_by_user_id",
pcf.created_at::date
FROM posts p
INNER JOIN post_custom_fields pcf ON pcf.post_id = p.id
WHERE (action_code = 'assigned_group' OR action_code = 'reassigned_group')
AND pcf.name = 'action_code_who'
ORDER BY pcf.value, pcf.created_at DESC
改めて、ご協力ありがとうございました。![]()