2012-11-15 226 views
0

我想刪除全部完全相同條形碼,所以我只剩下唯一的條形碼。 我該怎麼做?從查詢中刪除重複條目

我的查詢屬性是這些:

SELECT 
    Barcode, DeliveryAdrID 
FROM 
    dbo.Sending 

誰能幫助?

+3

這會實現什麼? – Oded

+3

你爲什麼需要問?你已經有了查詢......它不起作用嗎?沒有返回正確的數據?那麼*正確的數據*會是什麼?向我們展示您要查找的表格內容和輸出! –

+0

這將得到不同的條碼和DeliveryAdrID我只希望它得到不同的條碼 – Lahib

回答

0

如果你只是想條碼一次,有的DeliveryAdrID值去用它

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

這允許設置類似的結果:

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

即每個條形碼只能出現一次(不同)但多個條形碼可能會以相同的DeliveryAdrID結束。

+0

我編輯了這個問題。你能告訴我如何刪除**所有**重複條形碼? – Lahib

+0

從顯示的結果中刪除 - 答案已經完成。 – RichardTheKiwi

0

你有沒有在你的桌子上提交的ID?

所以,你可以嘗試:

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

希望我明白你想做些什麼?

0

這就是我一直在尋找。

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