Sql 以列形式显示从select语句返回的结果量

Sql 以列形式显示从select语句返回的结果量,sql,ssms,Sql,Ssms,我写了一个非常简单的查询,从我的数据库中返回所有部门,这些部门都有未授权的员工,我现在应该去哪里才能知道如何显示有多少员工 对于exmaple,我希望: Departments | Un-Commissioned Empl. ---------------------------------- Admin. | 7 Marketing | 5 Purchasing | 10 假设我正确理解了您的模型,您需要将这两个表连接在一起,使

我写了一个非常简单的查询,从我的数据库中返回所有部门,这些部门都有未授权的员工,我现在应该去哪里才能知道如何显示有多少员工

对于exmaple,我希望:

Departments | Un-Commissioned Empl.
----------------------------------
Admin.      |         7
Marketing   |         5
Purchasing  |         10

假设我正确理解了您的模型,您需要
将这两个表连接在一起,使用
计数
聚合来获得退役员工:

select d.department_name, count(*)
from departments d
    inner join employees e on d.department_id = e.department_id
where e.commission_pct = 0 
group by d.department_name

如果您需要所有部门,即使他们没有退役员工,您也需要使用
外部联接
,并将where条件移动到联接:

select d.department_name, count(e.employee_id)
from departments d
    left join employees e on d.department_id = e.department_id 
         and e.commission_pct = 0 
    group by d.department_name

不幸的是,当我尝试获取“departments.DEPARTMENT\u NAME”列时,它在选择列表中无效,因为它既不包含在聚合函数中,也不包含在GROUP BY子句中。“非常感谢,现在我知道该做什么了,是时候去w3school学习如何做了。”。