You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写SQL查询每位chef的wnr及对应下属员工数量

问题原因

你的原SQL逻辑错位:werknemer表的每条员工记录中,chef字段存储的是该员工直属上级的用户编号,你直接按w.chef分组,但SELECT子句取的是w.wnr(下属的用户编号),最终统计结果的编号和人数对应关系自然和预期相反。

修正后的SQL

SELECT 
  c.wnr,
  c.wnaam,
  COUNT(w.wnr) AS 'aantal werknemers'
FROM werknemer w
INNER JOIN werknemer c 
  ON w.chef = c.wnr -- 关联获取上级的完整用户信息
GROUP BY c.wnr, c.wnaam -- 按上级的用户编号、名称分组统计

补充说明

如果需要同时展示没有下属的上级(下属数显示为0),可以换用左连接写法:

SELECT 
  c.wnr,
  c.wnaam,
  COUNT(w.wnr) AS 'aantal werknemers'
FROM werknemer c
LEFT JOIN werknemer w 
  ON w.chef = c.wnr
GROUP BY c.wnr, c.wnaam

内容的提问来源于stack exchange,提问作者Robin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 07:54:07