我有三张桌子:
Product(columns: Id, ProductType, ProductId, ...)
Apple(columns: Id, ProductType(will be always 1), ...)
Orange(columns: Id, ProductType(will be always 2), ...)
如果Product
a有ProductType
1,我想将其与Apple
表格相关联,如果为2,则结果为Orange
表格。是否可以在SQL中使用?
答案 0 :(得分:1)
你可以做一个所有子类型的联合,然后是外联接。
答案 1 :(得分:1)
在MySQL中,您可以这样做:
SELECT *
FROM Product p
JOIN Apple a ON (p.ProductType = 1 AND p.ProductId = a.Id)
JOIN Orange o ON (p.ProductType = 2 AND p.ProductId = o.Id)