Используй FILTER в агрегатах, вместо сложных CASE WHEN внутри SUM или COUNT. Это делает код короче и читаемее:
SELECT
COUNT(*) AS total_users,
COUNT(*) FILTER (WHERE is_active) AS active_users,
SUM(amount) FILTER (WHERE status = 'paid') AS total_revenue
FROM users;
Так ты можешь сразу строить несколько условий в одной выборке, не дублируя подзапросы и не нагружая CASE.
👉 Совет: работает во всех современных СУБД (Postgres, SQL Server 2023+, SQLite 3.30+, DuckDB и др.), но в MySQL придётся заменить на SUM(CASE WHEN ...).