我需要查找部门中存在的建筑物数量,因此我使用下面的查询
select sil.Name, Count((select * from Common.Building where TypeCode=10012)), Count((select * from Common.Building where TypeCode=98)) from Common.Building ok
join Skrs.Department sil on ok.DepartmentId=sil.Id
group by sil.Name
这是sql错误消息:
"无法对包含的表达式执行聚合函数 聚合或子查询"
如何检索数据?
已编辑:样本数据:
Common.Buildings
DepartmentID Name
35 Kurum Alt Birimleri
35 VEREM SAVAŞ DİSPANSERİ
6 DİĞER
5 SAĞLIK OCAĞI
Skrs.Department
Id Adi
1 ADANA
2 ADIYAMAN
3 AFYONKARAHİSAR
4 AĞRI
5 AMASYA
答案 0 :(得分:2)
我猜你想要这样的东西:
select sil.Name,
sum(case when b.TypeCode = 10012 then 1 else 0 end),
sum(case when b.TypeCode = 98 then 1 else 0 end)
from Common.Building b join
Skrs.Department sil
on b.DepartmentId = sil.Id
group by sil.Name;