我有一个ID和City列表。我想写一个sql查询,它将返回ID和count(ID)作为City = City和ID = ID的列。
到目前为止,我有这个:
select N.ID, count(N.ID) as OpenCities
into #new2
from #new N
where ...
我遇到麻烦的部分在哪里。请帮忙。谢谢。
示例数据:
ID | City
=============
1 New York
1 Chicago
2 New Jersey
2 Chicago
2 Chicago
3 Miami
3 Miami
3 Miami
3 Miami
3 Tuscon
我想要的回复:
ID | OpenCities
===================
2 2
3 4
答案 0 :(得分:2)
尝试按id
和city
进行分组,只获得计数超过1的结果。
SELECT
ID,
count(1)
FROM Table
GROUP BY ID, City
HAVING count(1) > 1