3つのテーブルTa、Tb、Tcが与えられます:
Ta(ID, Field1)
Tb(ID, Field2)
Tc(ID, Field3)
与えられたデータの例:
Ta
ID Field1
---------
1 A
1 B
Tb
ID Field2
---------
1 C
1 D
2 E
Tc
ID Field3
---------
1 F
2 G
2 H
質問: このデータを結合して返すにはどうすればよいですか?
ID Field1 Field2 Field3
-----------------------
1 A C F
1 B D NULL
2 NULL E G
2 NULL NULL H
外部結合でこれを達成できると思いましたが、そうではないようです。行が重複しないようにすべての情報を戻す限り、グループ化の順序は実際には重要ではありません。
明確にするために。結果セットが最小行数のすべてのデータを返す限り、どの組み合わせを取得してもかまいません。これが私がやろうとしていることのより現実的な例です:
人を与えられて、彼をジョンと呼んでください。彼は2つの電話番号と3つの電子メールアドレスを持っています:
PID Email
---------
John john@test.com
John john@mail.com
John john@john.com
PID Tel
--------
John 011
John 022
戻りたい:
PID Email Tel
----------------------
John john@test.com 011
John john@mail.com 022
John john@john.com NULL