# Статистика по флагам спама, выявленным автоматизацией первичной обработки ИИ

**URL:** https://meta.discourse.org/t/statistics-on-spam-flags-reported-by-ai-triage-automation/368319
**Category:** Data & reporting
**Tags:** ai, sql-query, spam
**Created:** [31.Май.2025 02:25:31 UTC](https://meta.discourse.org/t/statistics-on-spam-flags-reported-by-ai-triage-automation/368319 "2025-05-31T02:25:31Z")
**Posts on this page:** 1
**Showing post:** 3

<div class="post-metadata">

### Author: ![Moin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/moin/32/554653_2.png) [@Moin](https://meta.discourse.org/u/Moin)
#### Post date: [31.Май.2025 06:49:17 UTC](https://meta.discourse.org/t/statistics-on-spam-flags-reported-by-ai-triage-automation/368319/3 "2025-05-31T06:49:17Z")

</div>

Эта ошибка возникает из-за того, что за указанный период не было флагов спама от @system, с которыми вы согласились или не согласились.  
Запрос пытается разделить на общее количество флагов, удовлетворяющих условиям. В вашем случае это 0, поэтому происходит сбой.  
Если вы хотите, чтобы запрос всё равно возвращал результат, используйте `NULLIF` для проверки, чтобы получать `NULL`, когда делить не на что.

```sql
-- [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 для спама (Пометить как спам и скрыть сообщение)
    AND r.created_at BETWEEN :start_date AND :end_date
    AND r.status IN (1, 2) -- Принятые и отклонённые флаги
    AND r.created_by_id = -1 -- ID системного пользователя

```

---

_[View the full topic](https://meta.discourse.org/t/statistics-on-spam-flags-reported-by-ai-triage-automation/368319)._
