SQL条件关系

时间:2012-09-08 13:09:47

标签: mysql sql foreign-keys

我有三张桌子:

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中使用?

2 个答案:

答案 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)