我需要执行以下操作(我不确定是否可以使用 SQL)
表 A
col_a_1、col_a_2、col_a_3
表 B
col_a_1,col_b_1,col_b_2....
表 C
col_a_1,col_c_1,col_c_2....
col_a_1 在表 A 中是唯一的。我需要连接表 A、B、C,以便表 A 中的每个条目都会出现多次,但表 B 和 C 中的每个条目只出现一次,并且与表 A 的相同 col_a_1 相对。
我知道如何使用代码来做到这一点。也可以单独使用 SQL 吗?
提前致谢。
您要么想使用某种外连接。左或全外。
SELECT A.*, B.*, C.*
FROM Table_A A
LEFT JOIN Table_B B on A.col_A_1 = B.Col_A_1
LEFT JOIN table_C C on A.Col_A_1 = C.Col_A_1
SELECT A.*, B.*, C.*
FROM Table_A A
FULL OUTER JOIN Table_B B on A.col_A_1 = B.Col_A_1
FULL OUTER JOIN table_C C on A.Col_A_1 = C.Col_A_1
或者可能是一个联合结果......这取决于你所追求的。
SELECT A.*, B.*
FROM Table_A A
INNER JOIN Table_B B on A.col_A_1 = B.Col_A_1
UNION
SELECT A.*, C.*
FROM Table_A A
INNER JOIN Table_C C on A.col_A_1 = C.Col_A_1