从查询中删除重复条目

时间:2012-11-15 11:37:42

标签: sql sql-server

我想删除所有相同的条形码,因此我只剩下唯一的条形码。 我怎么能这样做?

我的查询属性是:

SELECT 
    Barcode, DeliveryAdrID
FROM 
    dbo.Sending

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:0)

如果您只想要一次Barcode,并且需要一些DeliveryAdrID值

  SELECT Barcode, MIN(DeliveryAdrID) OneOfDeliveryAdrID
    FROM dbo.Sending
GROUP BY Barcode;

这允许结果集如:

Barcode  | OneOfDeliveryAdrID
ABCDEF     123
XYZ        123
PPP        123
ABC123     456
BARCODE    789

即。每个条形码只会出现一次(DISTINCT),但多个条形码可能会以相同的DeliveryAdrID结束。

答案 1 :(得分:0)

你的桌子上有Id字段吗?

所以,你可以尝试:

select Barcode, DeliveryAdrID
from dbo.Sending s
where Id >= all
(
 select Id
 from dbo.Sending
 where Barcode=s.Barcode
)

希望我明白你要做的事情......

答案 2 :(得分:0)

这就是我想要的。

SELECT Barcode, MIN(DeliveryAdrID)as DeliveryAdrID
    FROM dbo.Sending
GROUP BY Barcode
Having count(Barcode)=1