这应该很简单。我不知道为什么我感到难过。
我有两个相似的表。假设它们每个只有2列:PartNumber和Order。
在单个语句中,我想从WorkItemPartsFiltered中选择Order = ABC的零件号,但是如果不存在,我想从WorkItemParts中选择Order = ABC的零件号。
--WorkItemParts
PartNumber | Order
123 | ABC
456 | ABC
789 | ABC
012 | ABC
123 | DEF
456 | DEF
389 | GHI
--WorkItemPartsFiltered
PartNumber | Order
123 | ABC
456 | ABC
789 | ABC
456 | DEF
389 | GHI
您必须使用带有JOIN的case语句,如下所示:
SELECT Order, CASE WHEN WorkItemParts.PartNumber is null
THEN WorkItemPartsFiltered.PartNumber
ELSE WorkItemParts.PartNumber END
FROM WorkItemParts
LEFT JOIN WorkItemPartsFiltered
ON (WorkItemPartsFiltered.Order = WorkItemParts.Order)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句