如何检查SQL Server中的重复记录

Jin*_*ong 11 sql t-sql sql-server

有没有人知道如何编写SQL Server脚本来检查表是否包含重复的电话号码?

例:

我有一个名为customer的表,其中包含以下数据

name   telephone
alvin  0396521254
alan   0396521425
amy    0396521425
Run Code Online (Sandbox Code Playgroud)

如何在SQL Server中编写可以返回具有重复电话号码的记录的脚本?

OMG*_*ies 24

要查看带有重复项的值:

  SELECT c.telephone
    FROM CUSTOMER c
GROUP BY c.telephone
  HAVING COUNT(*) > 1
Run Code Online (Sandbox Code Playgroud)

要查看表中相关记录的重复项:

SELECT c.*
  FROM CUSTOMER c
  JOIN (SELECT c.telephone
          FROM CUSTOMER c
      GROUP BY c.telephone
        HAVING COUNT(*) > 1) x ON x.telephone = c.telephone
Run Code Online (Sandbox Code Playgroud)