我有一个带有数字ID和条形码的表,需要将给定的ID列表转换为相应的条形码列表。但是,如果我需要为每个ID提供一个条形码,即使存在多个给定ID也是如此。 我尝试的第一件事是
SELECT条形码来自prod WHERE prodID IN(76,76,76,88,88);
但我只有2个条形码(一个用于ID 76,一个用于ID 88),而不是我需要的5个。
如何在不必为每个ID运行一个查询的情况下知道如何做到这一点?
答案 0 :(得分:1)
我会在接收结果的代码中处理它。在这里得到5个结果是没有意义的,因为你已经拥有了你要求的所有信息:prodID 76和88的条形码
答案 1 :(得分:1)
我假设您需要为给定示例返回5行,无论它们是否是相同的prodID。
一种解决方案是使用即时创建的表格加入您的表格,返回您需要的所有prodID。
SELECT p.Barcode
FROM prod p
INNER JOIN (
SELECT 76 AS prodID
UNION ALL SELECT 76
UNION ALL SELECT 76
UNION ALL SELECT 88
UNION ALL SELECT 88
) i ON i.prodID = p.prodID