أعتقد أنه يجب أن تكون قادرًا على الاستفادة من بعض الأمثلة الموجودة في (Superseded) What cool data explorer queries have you come up with? للوصول إلى ما تريده (والوسم sql-query يحتوي على المزيد من المواضيع أيضًا)
إذا نظرت في هذه المواضيع ورأيت ما إذا كان أي منها يتوافق مع ما تبحث عنه، فيمكننا مساعدتك في تحسين أي شيء إذا احتجت إلى ذلك. ![]()
أنا متأكد من وجود طرق أسهل للقيام بذلك، ولكن ربما شيء مثل هذا؟
-- [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
انتظر. هذا لن يكون شهريًا. دعني أحاول مرة أخرى…
ربما سأنجح بشكل أفضل مع هذا.
ماذا عن شيء مثل هذا؟
-- [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