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

标签 sql sql-server tsql

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

示例:

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

name   telephone
alvin  0396521254
alan   0396521425
amy    0396521425

如何在 SQL Server 中编写一个脚本来返回那些具有重复电话号码的记录?

最佳答案

要查看具有重复项的值:

  SELECT c.telephone
    FROM CUSTOMER c
GROUP BY c.telephone
  HAVING COUNT(*) > 1

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

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

关于sql - 如何检查 SQL Server 中的重复记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4273821/

相关文章:

sql-server - 重置 SCOPE_IDENTITY()

sql - 在 SQL 中将小时转换为分钟

mysql - SQL 查询显示结果 Year to month per month

C# SQL Server 登录凭据

sql - (反向)递归查询

sql-server - 显式锁定 SQL Server 中的表?

mysql - 多对多关系的SQL查询

c# - 使用 count() 优化 linq 查询

sql - 从 SQL 查询生成的 KML 文件保存到本地驱动器

sql - 使用 DATEDIFF() 的计算列