使用group by子句多次连接

时间:2018-01-29 09:55:08

标签: sql sql-server group-by count

我有三张桌子。 MainTable

HospitalId City  Data
1           1     20
1           1     10
2           2     50
3           3     100

医院

HospitalId, Staff
1            5
2            30
3            10

CityId City
1       Delhi
2       New York
3       Mumbai

我需要找到城市的百分比

ResultTable

City         Staff  Total Percentage
Delhi          10    30     
New York       30    50
Mumbai         10    100

我尝试使用cound但是dos dos可以使用group by子句。

1 个答案:

答案 0 :(得分:-1)

你的问题是:

  

我需要从城市中找到百分比

但是,您的结果提示了一个基本的聚合查询:

select c.City, sum(h.Staff) as staff, sum(m.Data) as Total_Percentage
from City c join
     MainTable c
     on m.City = c.CityId join
     Hospital h
     on h.HospitalId = m.HospitalId
group by c.City;

我不会将此查询描述为从每个城市返回百分比。但我也不知道data的含义。