Power BI跨表统计需求:基于Table A列计算Table B值的计数
解决方案
表结构还原
- Table A(两列):
Name:员工姓名Dept:所属部门
- Table B(两列):
Dept:部门名称Employee ID:员工ID
实现SQL语句
要实现按Table A的部门列,统计Table B中对应部门的员工数量,可使用内连接+分组统计的方式:
SELECT a.Dept, COUNT(b.`Employee ID`) AS Count FROM TableA a JOIN TableB b ON a.Dept = b.Dept GROUP BY a.Dept ORDER BY Count DESC;
结果说明
执行上述语句后,会得到和预期一致的分组统计结果:按部门分类,显示每个部门在Table B中的员工计数,示例结果如下:
| Dept | Count |
|---|---|
| IT | 3 |
| Finance | 1 |
| HR | 1 |
如果需要保留Table A中存在但Table B无对应数据的部门(计数显示0),可以改用左连接:
SELECT a.Dept, COUNT(b.`Employee ID`) AS Count FROM TableA a LEFT JOIN TableB b ON a.Dept = b.Dept GROUP BY a.Dept ORDER BY Count DESC;
内容的提问来源于stack exchange,提问作者user20564068
相关产品推荐
相关产品推荐

