我有一个如下表:
ID Doc ID Names
XX 97... Name1
XY 97... Name 2
XZ 98... Name 1
...
现在,我想查找特定名称的所有重复项,但只有名称中的任何重复项包含以97开头的文档Id。SQL的简单重复查询没有帮助,请帮助。
预期输入&输出
考虑:
SELECT Table1.*, Query1.CountOfDocID
FROM (SELECT Names, Count(DocID) AS CountOfDocID FROM Table1 GROUP BY Names) AS Query1
INNER JOIN Table1 ON Query1.Names = Table1.Names
WHERE CountOfDocID>1 AND Table1.Names IN (SELECT Names FROM Table1 WHERE DocID LIKE "97*");
在回答您的评论问题时,将Allen Browne网站上的功能放入一个通用模块中。调用查询或文本框中的函数
SELECT DISTINCT Table1.Names, Query1.[CountOfDocID],
ConcatRelated("DocID","Table1","Names='" & [Table1]![Names] & "'") AS Docs
FROM (SELECT Names, Count(DocID) AS CountOfDocID FROM Table1 GROUP BY Names) AS Query1
INNER JOIN Table1 ON Query1.Names = Table1.Names
WHERE [CountOfDocID]>1 AND Table1.Names In (SELECT Names FROM Table1 WHERE DocID LIKE "97*");
SELECT First(tblEmployee.[empid]) AS [tblEmployee.EmployeeID], Count([tblEmployee.empid]) AS NumberOfDups
FROM tblEmployee
GROUP BY tblEmployee.[empid]
HAVING (((Count(tblEmployee.[empid]))>1));
https://www.wikihow.com/Find-Duplicates-Easily-in-Microsoft-Access