AIトリアージ自動化によって報告されたスパムフラグの統計

そのエラーは、その期間中にあなたが同意または反対した@systemによるスパムフラグがなかったために発生します。
クエリは、条件を満たすフラグの総数で除算しようとします。あなたの場合、それは0なので、壊れます。
クエリがそれでも結果を返すようにしたい場合は、NULLIFを使用してそれをチェックし、除算するものがない場合にNULLを取得できます。

-- [params]
-- date :start_date = 2025-01-01
-- date :end_date = 2025-05-30

SELECT 
    COUNT(*) AS total_flags,
    COUNT(*) FILTER (WHERE r.status = 1) AS approved_flags,
    COUNT(*) FILTER (WHERE r.status = 2) AS rejected_flags,
    ROUND(100.0 * COUNT(*) FILTER (WHERE r.status = 1) / NULLIF(COUNT(*), 0), 2) AS approved_percentage,
    ROUND(100.0 * COUNT(*) FILTER (WHERE r.status = 2) / NULLIF(COUNT(*), 0), 2) AS rejected_percentage
FROM 
    reviewables r
JOIN 
    post_actions pa ON pa.post_id = r.target_id AND r.target_type = 'Post'
WHERE
    pa.post_action_type_id = 8 -- ID for spam (スパムとしてフラグを立てて投稿を非表示にする)
    AND r.created_at BETWEEN :start_date AND :end_date
    AND r.status IN (1, 2) -- Accepted and rejected flags(承認および拒否されたフラグ)
    AND r.created_by_id = -1 -- System user ID(システムユーザーID)
「いいね!」 2