【发布时间】:2014-11-14 15:14:04
【问题描述】:
我有两个表:“PartNumberX”和“MasterPartTable”。我的最终目标是使用查询从“MasterPartTable”中提取某些字段以获取唯一部件号列表(“MasterPartTable”有重复项)。除了使用SELECT DISTINCT 方法的一个之外,我能够成功地获取我想要的所有字段。不幸的是,最后一列“零件名称”是(由其他人)草率地创建的,并且某些零件名称带有逗号,其中相同的零件编号可能不是例如。 “Assembly, The Thing”和“Assembly The Thing”都有相同的部件号,所以我只想要其中一个。我的想法是,我将能够将好的数据插入到表中,然后运行更新查询,该查询使用DLookup 使用“PartNumberX”中的零件编号查找零件名称,以从中查找相应的零件名称“MasterPartTable”,但我似乎无法让它工作。
当我使用下面的更新查询时,它返回的空白字段数量与“PartNumberX”中的空白字段数量相同。
UPDATE PartNumberX
SET PartNumberX.[Part Name] = DLookUp("[MasterPartTable].[Part_Name]","MasterPartTable","MasterPartTable.Part_Number = PartNumberX.Part_Number");
我在这里遗漏了什么还是有其他方法可以做到这一点?我知道我可以使用 VBA 并单独滚动浏览每个字段来执行此操作,但我更喜欢更快的查询。
编辑-
使用 HansUp 的第二种方法得到以下结果:
UPDATE MasterpartsTable INNER JOIN PartNumberX ON MasterpartsTable.Part_Number=
PartNumberX.Part_Number
SET PartNumberX.[Part Name] = [MasterpartsTable].[Part_Name];
这会导致空查询。
编辑2-
实际上,我只是运行了该死的东西,它运行良好!我不明白为什么预览是空的,但不管它是否有效。
【问题讨论】:
标签: sql ms-access ms-access-2007