相同的外键我有三个表的样子连接两个表具有三表
1。表科 BranchID = FK 名称 地址 联系
2.工作人员 Staff_ID = FK 名称 地址 性别 联系 Supervisor_ID =如果没有一个上司则NULL BranchID
3.表管理 Staff_ID = FK 名称 地址 性别 联系 BranchID
我想列出一个列表,显示每个分支的员工分布情况。包括分行编号,经理姓名,总监人数,以及每个分行的男性和女性员工总数。
如何使用sql语句检索如上所示的结果集?
下面是我的查询
选择Manager.Name,Branch.BranchNum,计数(情况下,当Supervisor_ID为null,则1,否则空结束)作为NumberofSupervisor,计数(情况下,当Staff.gender = '男' 和Supervisor_ID如果男性,计数(当Staff.gender ='女性'和Supervisor_ID不为空,则1为空结束时)作为女性来自Branch.BranchNum = Manager.BranchNum加入职员的女性在Branch.BranchNum = Staff.BranchNum group by Branch.BranchNum
我得到这个错误列'Manager.Name'在选择列表中无效,因为它不包含在聚合函数或GROUP BY子句中。
你能指导我吗?
谢谢。
那么什么是阻止你?你可以分享你已经尝试过,为什么它不能正常工作吗? –
我想你的意思是说ID列是它们各自表的主键; – SchmitzIT
请问你能分享你想加入的表的表结构和你问题中的确切结果细节吗? –