我有一个与此类似的表
ID | CountryID
1 | 22
2 | 19
4 | 19
5 | 9
6 | 14
我希望按第一个ID列进行分组,但只选择行,其中CountryID在整个ID中具有相同的值。结果表应该看起来像
2147483647
有什么想法吗?
答案 0 :(得分:4)
我认为以下查询应该有效:
SELECT ID, MAX(CountryID)
FROM Table1
GROUP BY ID
HAVING MIN(CountryID) = MAX(CountryID)
答案 1 :(得分:1)
SELECT ID, count(distinct CountryID)
FROM Table1
GROUP BY ID
HAVING count(distinct CountryID)=1