我有以下表格。
components (prodNo, compNo, partNo)
parts (partNo, partName)
products (prodNo, prodName)
我需要选择正在使用的部件或不用于制造不同产品的部件。
我可以选择正在使用的部件,但不知道如何在结果中包含未使用的部件。
无论如何,结果应该是以下格式
结果
prodNo, prodName, partNo, partName, compNo, status
101 A 23 G 55 YES
NULL NULL 20 I NULL NO
34 F 555 S 58 YES
答案 0 :(得分:1)
您应该使用parts表作为查询的核心,并使用相应的组件和产品表进行外连接
Select products.prodNo, products.prodName, parts.partNo, parts.partName, components.compNo,
case when NVL(products.prodNo,0) > 0 then 'YES' else 'NO' end as status
from parts
left outer join components on components.partNo = parts.partNo
left outer join products on products.prodNo = components.prodNo
答案 1 :(得分:0)
Select p.prodNo,prd.prodName,prt.partNo,prt.partName,p.compNo,IF (p.prodNo IS NULL,"NO","YES") as status
from components as p
LEFT OUTER JOIN parts prd as p.partNo = prd.partNo
LEFT OUTER JOIN products prt on p.prodNo = prt.prodNo