sql如何实现这个格式?
来源:百度知道 编辑:UC知道 时间:2024/06/23 22:17:20
请看:
SELECT
共青团员=(COUNT(CASE NAME WHEN'共青团员'THEN'共青团员'END)),
群众=(COUNT(CASE NAME WHEN'群众'THEN'群众'END)),
中共党员=(COUNT(CASE NAME WHEN'中共党员'THEN'中共党员'END))
FROM MF_YG_Z
GROUP BY NAME
得出结果是
共青团员 群众 中共党员
1 1 0 0
2 0 2 0
3 0 0 1
我要求得出的结果是
共青团员 群众 中共党员
1 1 2
也就是说所有结果在一行中体现
drippy,你的答案和我的结果一样的,还是分3行显示的。
一定要在一行中显示.
SELECT
共青团员=(COUNT(CASE NAME WHEN'共青团员'THEN'共青团员'END)),
群众=(COUNT(CASE NAME WHEN'群众'THEN'群众'END)),
中共党员=(COUNT(CASE NAME WHEN'中共党员'THEN'中共党员'END))
FROM MF_YG_Z
GROUP BY NAME
得出结果是
共青团员 群众 中共党员
1 1 0 0
2 0 2 0
3 0 0 1
我要求得出的结果是
共青团员 群众 中共党员
1 1 2
也就是说所有结果在一行中体现
drippy,你的答案和我的结果一样的,还是分3行显示的。
一定要在一行中显示.
可以这样显示啊:
共青团员 1
群众 1
中共党员 2
//也就是说所有结果在一列中体现
select NAME , count(*) as 人数 from MF_YG_Z GROUP BY NAME
SELECT
(COUNT(CASE NAME WHEN'共青团员'THEN'共青团员'END)) as 共青团员,
(COUNT(CASE NAME WHEN'群众'THEN'群众'END)) as 群众,
(COUNT(CASE NAME WHEN'中共党员'THEN'中共党员'END)) as 中共党员
FROM MF_YG_Z
GROUP BY NAME