バッジクエリにカウンターパラメータを追加する方法は?

こんにちは皆さん、

以下のバッジクエリでは、特定のカテゴリで特定のキーワードを含むトピックを作成したユーザーにバッジを発行しています。

SELECT p.user_id, min(p.created_at) granted_at, MIN(p.id) post_id
FROM badge_posts p
JOIN topics t ON t.id = p.topic_id
WHERE category_id = (
  SELECT id FROM categories WHERE name ilike 'Where to fly your drone in the UK'
) AND p.post_number = 1 AND p.raw LIKE '%dronescene.co.uk%' 
GROUP BY p.user_id

このクエリは長期間正常に動作していましたが、さらに一歩進めたいと考えています。

このクエリにカウンターを追加して、1 つの該当トピックを作成した人にはブロンズバッジ、5 つ作成した人にはシルバーバッジ、10 作成した人にはゴールドバッジを発行できるようにするにはどうすればよいでしょうか?

当然ながらバッジごとにクエリを分ける必要があることは理解していますが、クエリにカウンターを追加する方法がわかりません。

ご教示いただけないでしょうか?

よろしくお願いいたします :+1:t2:

クエリの末尾に以下を追加することで、自分で質問に答えられたと思います。

HAVING count(*) > 4

提案された結果を確認・検証する必要があります。