Obter contagem de sinalizações recentes em uma categoria específica

@southpaw Me pegou; eu estava prestes a postar :smile:

Se você estiver interessado, adicionei campos personalizados que você pode preencher:

--[params]
-- int_list :category_ids
-- text :interval = 20min

SELECT t.category_id, count(pa.id) count
from post_actions pa
INNER JOIN posts p on p.id = pa.post_id
INNER JOIN topics t on t.id = p.topic_id
WHERE post_action_type_id in (3, 4, 6, 7, 8)
    AND t.category_id in (:category_ids)
    AND pa.created_at >= now() - interval :interval
GROUP BY t.category_id

Você pode inserir vários IDs de categoria e intervalos personalizados (como 1h, 30 min, 3 meses, etc.)

Observação: Mantive the post_action_type_id 6, que acredito estar relacionado a um usuário recebendo um aviso; não tenho certeza se você quer contar também; sinta-se à vontade para removê-lo então.