如何在徽章查询中添加计数器参数?

大家好,

我有以下徽章查询,它会向在特定类别中创建包含特定关键词主题的用户颁发徽章:

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

只需确认/检查所提议的结果。