我正在使用 Microsoft Access 来保存我的数据库。
我在 Microsoft Access 中创建了一个课程开发数据库。
原始数据集包含每门课程的开发者信息,一个人开发多门课程,每门课程有多个开发者,开发者和课程表之间形成多对多关系。
为了整理开发者表,我使用查询向导来查找并删除重复数据,因为在很多情况下会出现相同的姓名和电话号码,但隶属关系不同。
但是,我想为每个唯一的姓名和电话号码组合保留一条记录,并删除其余的。查询似乎会删除重复数据的所有实例,所以我不确定如何继续。
这就是我的数据的样子:
这就是我想要的结果
我尝试了查询向导。这是我创建的查询的 SQL:
SELECT Developer.Name, Developer.Affiliation, Developer.Position, Developer.Cell Phone
FROM Developer
WHERE ((Developer.Name) in (SELECT [Name] FROM [DEVELOPER] As Tmp GROUP BY [Name],[Affiliation],[Position],[Cell Phone] HAVING Count(*)>1 And [Affiliation] = [DEVELOPER].[Affiliation] And [Position] = [Developer].[Position] And [Cell Phone] = [Developer].[Cell Phone])))
ORDER BY Developer.Name, Developer.Affiliation, Developer.Position, Developer.Cell Phone.
非常快速的方法是将不同值写入新表:
SELECT DISTINCT
[Name], [Affiliation], [Position], [Cell Phone], [Office]
INTO
DeveloperUnique
FROM
Developer;
我们有X表数据 第 1 步:创建重复项查询向导 步骤 2:使用第一个查询向导创建不匹配的查询向导(重复) 步骤3:创建追加查询并分别追加到Y表中
Y 表我们没有任何重复记录,我们得到了全部。