我是数据库的新手,我有三张桌子
PRODUCT_INFO| FOOD_ADDITIVE_TABLE | SUPER_TABLE
ID CODE | ID FOOD_ADDITIVE | ID PRODUCT_ID FOOD_ADDITIVE_ID
1 100 | 1 E621 | 1 1 3
2 156 | 2 E523 | 2 1 2
3 295 | 3 E211 | 3 3 1
例如,我有代码100
所以我需要从E211
中选择E523
和FOOD_ADDITIVE_TABLE
因为我的SUPER_TABLE
Product_ID(1)链接到两种食品添加剂(3和2)。
所以我在这里做了什么
SELECT FOOD_ADDITIVE FROM FOOD_ADDITIVE_TABLE ....And now I need JOIN
但问题在哪里?我在FOOD_ADDITIVE_TABLE
中没有任何其他信息可以加入其他表格。
答案 0 :(得分:3)
您需要JOIN
公共列上的三个表,然后使用WHERE
子句,您只能获取所需的行:
SELECT aa.FOOD_ADDITIVE
FROM FOOD_ADDITIVE_TABLE AS aa
INNER JOIN SUPER_TABLE AS bb
ON aa.ID = bb.FOOD_ADDITIVE_ID
INNER JOIN PRODUCT_INFO AS cc
ON bb.PRODUCT_ID = cc.ID
WHERE cc.CODE = 100;
还要看看here关于JOIN。