📅  最后修改于: 2023-12-03 14:47:38.460000             🧑  作者: Mango
在 SQL 中,我们有时需要在表中查找重复数据。我们可以使用聚合函数 COUNT() 来计算某些列的值出现的次数,从而找到重复数据。
我们使用 GROUP BY 语句和 HAVING 子句来查找重复数据。下面是一个示例查询,假设我们有一个名为 users 的表,其中包含名称和电子邮件地址列。
SELECT name, email, COUNT(*)
FROM users
GROUP BY name, email
HAVING COUNT(*) > 1;
这将返回所有具有相同名称和电子邮件地址的行,并在最后一列中包含重复计数。HAVING 子句用于仅返回计数大于 1 的行。
| name | email | COUNT(*) | | ------ | ---------------| -------- | | Alice | alice@gmail.com| 2 | | Bob | bob@example.com| 3 | | Charlie| charlie@yahoo.com| 2 |
在上面的示例中,我们可以看到有两行具有相同名称和电子邮件地址的用户,他们的名称和电子邮件地址都是 Alice 和 alice@gmail.com。同样,我们看到 Bob 和 bob@example.com 具有三个重复值,而 Charlie 和 charlie@yahoo.com 具有两个重复值。
通过使用 COUNT() 和 GROUP BY 语句,我们可以轻松查找表中的重复数据。在实际的生产环境中,我们经常需要删除这些重复数据,以便保持数据的完整性和一致性。
以上就是 SQL 计数超过 1 的查询方法及结果,希望能对大家有所帮助。