我有一个大表,其中包含以下用户数据.
social security number name address
我想在表中找到所有可能的重复项
其中ssn是相等但名称不是
我的尝试是:
SELECT * FROM Table t1 WHERE (SELECT count(*) from Table t2 where t1.name <> t2.name) > 1
解决方法
SSN上的分组应该这样做
SELECT ssn FROM Table t1 GROUP BY ssn HAVING COUNT(*) > 1
..或者如果您每个ssn有很多行,并且只想找到重复的名称)
... HAVING COUNT(DISTINCT name) > 1
编辑,哎呀,误解了
SELECT ssn FROM Table t1 GROUP BY ssn HAVING MIN(name) <> MAX(name)