Ich denke, Sie sollten einige der Beispiele unter (Superseded) What cool data explorer queries have you come up with? verwenden können, um nah heranzukommen (und der Tag sql-query enthält noch viel mehr Themen).
Wenn Sie sich diese ansehen und sehen, ob etwas mit dem übereinstimmt, was Sie suchen, können wir Ihnen helfen, es zu verfeinern, wenn Sie es brauchen. ![]()
Ich bin sicher, es gibt elegantere Wege, dies zu tun, aber vielleicht so etwas?
-- [params]
-- int :cat_id = 6
-- date :date_from = 01/03/2022
-- date :date_to = 01/04/2022
SELECT t.category_id, count(t.category_id)
FROM topics t
WHERE t.category_id = :cat_id
AND t.created_at::date BETWEEN :date_from::date AND :date_to::date
AND t.deleted_at is null
GROUP BY t.category_id
Moment. Das wäre nicht Monat für Monat. Lassen Sie mich es noch einmal versuchen…
Vielleicht komme ich mit diesem hier besser zurecht.
Wie wäre es mit so etwas?
-- [params]
-- int :cat_id = 5
-- int :months = 12
SELECT
date_part('year', created_at) AS year,
date_part('month', created_at) AS month,
COUNT(category_id) AS "new_topics_month"
FROM topics t
WHERE t.category_id = :cat_id
AND t.deleted_at is NULL
GROUP BY date_part('year', created_at), date_part('month', created_at)
ORDER BY date_part('year', created_at) DESC, date_part('month', created_at) DESC
LIMIT :months