我有一个表“用户”,其中每个用户都有一个包含值“1”或“2”或“3”的“状态”列;
现在,通过单个 mysqli 查询,我只想计算有多少 status = 1 的用户、有多少 status = 2 的用户以及有多少 status = 3 的用户
注意:查询必须仅计数,除了每个状态的数量之外,无需选择或输出任何数据。
我在这里发现了涵盖几乎相同主题的其他问题,但它们并不完全相同。
谢谢。
这个怎么样:
SELECT
count(case when status = 1 then 1 else null end) AS STATUS_1,
count(case when status = 2 then 1 else null end) AS STATUS_2,
count(case when status = 3 then 1 else null end) AS STATUS_3
FROM users;
Run Code Online (Sandbox Code Playgroud)
count 只会计算非空条目,而 case-when 也适用于其他数据库。