[英]SQL Count on Multiple Fields
我甚至不确定这是否可行,或者我是否只需要编写多个查询。
我有一个数据库表如下: -
用户
我想要实现的输出如下
| Uni | Total Users | Male | Female
| Uni1 | 30 | 15 | 15
| Uni2 | 40 | 25 | 15
如果您能够在单个查询中实现这一点,或者我是否应该对每个结果使用不同的查询,我将不胜感激。
先感谢您。
菲尔
以下是在单个查询中执行此操作的方法:
select
UniversityId,
count(*) as `Total Users`,
sum(case when gender = 'male' then 1 else 0 end) as Male,
sum(case when gender = 'female' then 1 else 0 end) as Female
from User
group by UniversityId
演示: http ://www.sqlfiddle.com/#!2 / e7d16a / 4
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.