如何按OrgName和Status双列分组统计唯一用户数?
双维度分组统计唯一用户数的SQL方案
你只需在原有SQL基础上,将Status字段同时加入查询列表与分组条件,即可实现按OrgName和Status双列分组的统计需求:
select COUNT(DISTINCT E.Person) AS #Users , F.OrgName , E.Status FROM UsersTable E left join OrgTable F on E.OrgID=F.OrgID where F.OrgName in ( 'A', 'B', 'C') and E.Status in ('Active', 'Contingent staff', 'Terminated') group by F.OrgName, E.Status
关键修改说明:
- 在
select子句中添加E.Status,让结果集明确展示每个分组对应的用户状态 - 在
group by子句中补充E.Status,指定统计时同时按组织名称、用户状态两个维度分组
执行该语句后,结果集的每一行都会对应一个OrgName + Status组合的唯一用户数统计,完全匹配你需要的双维度统计需求。
内容的提问来源于stack exchange,提问作者Cristina
相关产品推荐
相关产品推荐

