id name type
---------------------
1 a ir
2 b sr
3 a ir
4 a sr
5 b ir
我想这样的使用COUNT我的输出在SQL获得多个COUNT在1个查询
name ir sr
-------------
a 2 1
b 1 1
id name type
---------------------
1 a ir
2 b sr
3 a ir
4 a sr
5 b ir
我想这样的使用COUNT我的输出在SQL获得多个COUNT在1个查询
name ir sr
-------------
a 2 1
b 1 1
SELECT name,
SUM(CASE type WHEN 'ir' THEN 1 ELSE 0 END) AS ir,
SUM(CASE type WHEN 'sr' THEN 1 ELSE 0 END) AS sr
FROM YourTable
GROUP BY name
在MySQL中,你可以简化这个到:
SELECT name,
SUM(type = 'ir') AS ir,
SUM(type = 'sr') AS sr
FROM YourTable
GROUP BY name
什么DB的味道? –