【发布时间】:2015-02-12 17:54:03
【问题描述】:
我正在尝试在用户表上查找所有案例变体重复项:
SELECT LOWER(EMAIL), COUNT(EMAIL)
FROM USERS
GROUP BY LOWER(EMAIL)
HAVING COUNT (LOWER(EMAIL)) >= 3;
结果类似于:
Emails Count (number of duplicates)
bob@example.com 3
john.smith@example.com 3
blah@example.com 4
james.smith@example.com 3
问题是我需要每封电子邮件的 ID,我该如何实现?由于 GROUP BY,我不能简单地将其添加到 SELECT 语句中:
SELECT **ID**, LOWER(EMAIL), COUNT(EMAIL)
FROM USERS
GROUP BY **ID**, LOWER(EMAIL)
HAVING COUNT (LOWER(EMAIL)) >= 3;
上面会寻找重复的电子邮件和 ID,这不是我需要的。
【问题讨论】:
标签: sql oracle11g group-by case-insensitive