【发布时间】:2019-06-28 05:28:31
【问题描述】:
我有三张桌子company_m,client_m,companyuser_m
company_m
CompanyID CompName
----------+-----------
7 Comp3
8 Comp2
9 Comp1
10 Company
11 Company4
client_m
clid AttachToCompanyID clname
-----+--------------------+------
1 7 client1
2 7 client2
6 8 client3
companyuser_m
uid CompanyID uname
---+---------+-------
1 7 user1
2 10 user2
我的目标
我需要获取对应公司的所有客户和用户的数量
预期输出
CompanyID CompName clientcount usercount
---------+-----------+--------------+--------
7 Comp3 2 1
8 Comp2 1 0
9 Comp1 0 0
10 Company 3 0 1
11 Company4 0 0
我的代码
select company_m.CompanyID,company_m.CompName,
count(client_m.AttachToCompanyID) as clientcount ,
count(companyuser_m.CompanyID) as usercount from company_m
left join client_m on client_m.AttachToCompanyID=company_m.CompanyID
left join companyuser_m on companyuser_m.CompanyID=company_m.CompanyID
group by company_m.CompanyID
但是上面的代码没有给出正确的输出。
查看我的fiddle
【问题讨论】: