我需要消除重复的ID。我已经尝试过下面的代码了,但是当我使用它时它并没有出现任何东西。
Select disticnt i.id,b.barcode,i.code,i.name,i.price
from inventory i
join barcodes b on i.id=b.id
问题是我得到相同的ID因为我有很多不同的条形码固定在一个id。如何消除重复的ids
答案 0 :(得分:0)
问题是条形码表可能为库存表中的每个ID都有多行。为了从库存表中只获取一条记录,您必须首先确定要为每个具有多个条形码的ID获取哪些条形码。一种方法是使用group by with max或min:
SELECT i.id,
MAX(b.barcode) as barcode,
i.code,
i.name,
i.price
FROM inventory i
JOIN barcodes b on i.id=b.id
GROUP BY i.id, i.code, i.name, i.price