【发布时间】:2010-11-27 01:40:33
【问题描述】:
我有两张桌子:
公司:(id,名称)
工人:(身份证、姓名、国家)
我想获取所有公司,并按来自给定国家/地区的员工人数对它们进行排序。
对于查找拥有更多美国工人的公司的查询,结果应为:
#workers from USA | company id | company name
----------------------------------------------
90 6 foo corp
45 9 bar corp
0 3 foobar corp
我试过了:
select
count(w.country='USA') as mycount,
w.company_id,
c.company_name
from
companies c
left join workers w on
c.id=w.company_id
group by
w.company_id,
c.company_name
order by mycount desc;
但这包括所有工人,无论其国家/地区如何。
有什么想法吗?
【问题讨论】:
标签: sql postgresql join count