1

我需要执行以下操作(我不确定是否可以使用 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 吗?

提前致谢。

4

1 回答 1

2

您要么想使用某种外连接。左或全外。

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
于 2013-02-18T21:21:22.907 回答