问题描述
|
我正在尝试检查重复条目的唯一字段(例如,条目在2个字段中是重复的,但在其他4个字段中是唯一的)-我有一个访问查询来查找重复项,但是我无法使用我想出了如何只显示在给定字段中重复的记录,同时仍向我显示有关这些记录的唯一信息。
有想法吗?
更新:这是我的查询。它让我对重复数据进行了计数,我想以某种方式添加唯一数据,例如[AllEmail Name]。[phone]等字段。
SELECT
First([AllEmail Name].[email]) AS [email Field],First([AllEmail Name].[firstname]) AS [firstname Field],First([AllEmail Name].[lastname]) AS [lastname Field],Count([AllEmail Name].[email]) AS NumberOfDups,Count([AllEmail Name].allEmail.id) AS CountOfallEmail_id
FROM [AllEmail Name]
GROUP BY [AllEmail Name].[email],[AllEmail Name].[firstname],[AllEmail Name].[lastname]
HAVING (((Count([AllEmail Name].[email]))>1));
另一个更新是示例数据:
Name Email Phone
John j@q.net 2345
John j@q.net 6789
John j@me.net 2134
John j@me.net 4444
要么返回类似
Name Email Dupes Phone
John j@q.net 2 2345
6789
or
John j@me.net 2 2314
John j@me.net 2 4444
解决方法
尝试将其分组:
select t1.col1,t1.col2,t1.col3,t1.col4,count(*) -- number of identical rows based on cols
from tbl t1
inner join tbl t2 on t2.col1 = t1.col1 -- same col1
and t2.col2 = t1.col2 -- same col2
and t2.id <> t1.id -- but not the same pkey
group by t1.col1,t1.col4 -- merge when col3 and col4 are the same