Neexistuje způsob, jak získat očekávaný výstup jedním jediným dotazem (protože struktura výsledku je odlišná). Chcete-li získat očekávané informace o users
, musíte použít dva různé dotazy tabulka:
1 – Můžete získat status
přehled s následujícím:
SELECT
SUM(CASE WHEN status = 0 THEN 1 ELSE 0 END) AS active_users,
SUM(CASE WHEN status = 1 THEN 1 ELSE 0 END) AS inactive_users,
SUM(CASE WHEN status = 2 THEN 1 ELSE 0 END) AS banned_users
FROM users
2 – Chcete-li získat všechny uživatele s status = 0
(aktivní) můžete použít následující:
SELECT *
FROM users
WHERE status = 0