これは「ユーザーに通知」の post_action に基づいているのでしょうか?
SELECT pa.user_id, current_timestamp AS granted_at
FROM post_actions pa
JOIN posts p ON p.id = pa.related_post_id
WHERE pa.post_action_type_id = 6
AND p.like_count >= 1
AND (:backfill OR p.user_id IN (:user_ids))
GROUP BY pa.user_id
HAVING COUNT(*) >= 1
実際、これはフラグが立てられた投稿内のリンクであり、PMではないと思います。少し調整が必要かもしれません。
p.id = pa.related_post_id の結合を少し変更すると、うまくいくと思います。![]()
HAVING は、1つ以上のシルバーおよびゴールドバージョンを付与したい場合にのみ必要だと思います。