我在MySql Company中有两个表:(cname,city)工作:(ename,cname,salary)
我想显示每个公司的员工人数,即使该人数为零。
例如
Company : Microsoft Bangalore IBM NY works : emp1 Microsoft 10000 emp2 Microsoft 90000
输出应为:
Microsoft 2 IBM 0
但是以下查询和其他类似查询仅显示那些至少拥有一名员工的公司:
Select count(*) from works natural join company group by company.cname
如果我使用外部联接,则员工数为零的公司仍将显示在一行中,因此该选项也将退出。
怎么做?
LEFT JOIN的经典案例:
SELECT c.cname, COUNT(w.ename) wcount FROM company c LEFT JOIN works w ON c.cname = w.cname GROUP BY c.cname