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 のすべてのエントリが複数回表示されるようにテーブル A、B、C を結合する必要がありますが、テーブル B と C のすべてのエントリはテーブル A の同じ col_a_1 に対して 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 に答える