sql-server - 如何在 SQL Server 中查找重复值

标签 sql-server sql-server-2008 duplicates

我正在使用 SQL Server 2008。我有一个表

Customers

customer_number int

field1 varchar

field2 varchar

field3 varchar

field4 varchar

...以及更多列,这对我的查询并不重要。

customer_number是pk。我正在尝试查找重复的值以及它们之间的一些差异。

请帮我找到所有具有相同内容的行

1) 字段 1、字段 2、字段 3、字段 4

2) 只有 3 列相等,其中一列不相等(列表 1 中的行除外)

3) 只有 2 列相等,其中两列不相等(列表 1 和列表 2 中的行除外)

最后,我将有 3 个包含此结果的表和附加的 groupId,这对于一组相似的组来说是相同的(例如,对于 3 列相等,具有 3 个相同列相等的行将是一个单独的组)

谢谢。

最佳答案

这是一个用于查找表中重复项的便捷查询。假设您要查找表中多次存在的所有电子邮件地址:

SELECT email, COUNT(email) AS NumOccurrences
FROM users
GROUP BY email
HAVING ( COUNT(email) > 1 )

您还可以使用此技术来查找仅出现一次的行:

SELECT email
FROM users
GROUP BY email
HAVING ( COUNT(email) = 1 )

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

相关文章:

Python查找重复项: Find out if there are duplicate numbers and the index diff is at most k

c# - 将 ORACLE SDO_GEOMETRY 导入 SQL Server 几何

sql-server - SQL Server管理工作室: icon meaning

c# - 什么代表sql server中的double?

sql - 使用 PowerShell 在 SQL Server DB 中插入字符串值。

mysql - 更新查询 MySQL 时出现重复键输入

c# - 搜索列表、范围

java - 尝试使用 SQL Server 身份验证连接到 SQL Server 2008 Express 数据库始终会导致 "Login failed for user ' .. .'."

sql - 如何从表列获取xml值

C# - 重复修改