如何处理重复值

时间:2014-03-18 13:40:42

标签: ms-access

我有一张100k以上的桌子。 我需要用最好的价格"

创建一个表格

大多数商品都有独特的供应商,但有些商品可能来自2个或3个不同的供应商,但具有相同的制造商部件号[MPN]。

要查找我使用过的重复值:

In (SELECT [MPN] FROM [Main Data] As Tmp GROUP BY [MPN] HAVING Count(*)>1 )

如何处理重复记录?对于每个重复的[MPN],我想选择既有库存又价格最低的记录?

表有字段: [EAN],[MPN],[库存编号] - 此字段具有唯一的供应商后缀,[名称],[成本],[数量]

先谢谢你了!

1 个答案:

答案 0 :(得分:0)

我会试试这个:

SELECT M1.MPN, M1.[Name], M2.QTY, Max(M1.Cost) as MaxCost, Min(M1.Cost) as MinCost
FROM [Main Data] M1
INNER JOIN (SELECT [MPN], Sum(1) as QTY FROM [Main Data] GROUP BY [MPN] HAVING Count(*)>1 ) M2
   ON M1.MPN = M2.MPN
GROUP BY M1.MPN, M1.[Name]

这将为您提供库存数量和最高价格,以及每件商品的最低价格。如果发现它们没用,请随意删除其他字段。