2014-10-06 120 views
1

我已經寫了一個非常簡單的查詢來從我的數據庫中返回具有未委託員工的所有部門,我應該在哪裏查看數字瞭解如何顯示有多少員工。顯示從SELECT語句返回的結果數量作爲列

對於〔實施例,我想:

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

enter image description here

回答

2

假設我正確理解你的模型,你需要join 2代表一起,使用count聚合得到退役員工:

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 

如果需要,即使他們沒有退役employeed各部門,你要使用outer join,而不是與移動地方標準的連接:

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 
+0

不幸的是,當我嘗試,我得到這個「專欄'departments.DEPARTMENT_NAME'在選擇列表中無效,因爲它不包含在聚合函數或GROUP BY子句中。「 – Kevin 2014-10-06 03:31:51

+0

@Kevin - 看到編輯,你只需要添加'group by'子句... – sgeddes 2014-10-06 03:32:35

+0

感謝一堆,現在我知道該怎麼做了,有時間到w3school去學習如何去做。 – Kevin 2014-10-06 03:34:41