0
私は2つのテーブルを持っています。最初のテーブルはコード番号を含み、2番目のテーブルはそのコード番号に対応する名前を含む。最初のテーブルはソースコード番号とターゲットコード番号を持っています。 2番目のテーブルには、これらのコード番号が別々の行に格納されています。だから、テーブルは、私が欲しいこのSQL - 2つのソース列を1つのターゲット列に結合する
表1
|Source_code|Target_code|
|253 |568 |
表2
|Code|Name |
|253 |John |
|568 |Steve|
ようになり、このような結果:
|source_code|name |target_code|name |
|253 |John |568 |Steve|
私は二回表の両方を結合してこれをしませんでした次のような単一のクエリ:
select A.source_code, B.name, A.target_code, C.name
from table1 A
join table2 B on A.source_code = B.code
join table2 C on A.target_code = C.code
これは、このクエリを処理する最適な方法のようには見えません。これを行うより良い方法はありますか?
どのDBMSを使用していますか? Postgres?オラクル? –
よく見えます。 – jarlh
Table2のコードで名前に参加する必要はありません。P – xQbert