2017-08-08 14 views
0

は、私が '辞書' としてテーブルAを持っていると仮定します。複数の列をどのように翻訳するのですか?

A type code name 
    1  a  x 
    1  b  y 
    2  a  z 
    2  b  t 

私は名前にして、次の表のBを翻訳したい:

B.c1はAのコードである
B c1  c2 
    a  a 
    a  b 
    b  b 

type = 1であり、B.c2はA.type = 2のコードである。 Bで1列のみ翻訳する必要がある場合

期待される結果は、それが簡単で、

x z 
x t 
y t 

です。

SELECT A.name 
FROM A, B 
WHERE A.type = 1 
    AND B.c1=A.code 
+0

あなたのアイデアは何ですか?あなたはピボットの概念を知っていましたか? –

+0

@JacekCzいいえ、私は絶対にSQLの新しいです。 –

+0

サンプルデータを投稿して結果を期待できますか? – Tomato32

答えて

2

ジョインを使用する。

select a1.type,b.c1,a2.type,b.c2 from b 
left outer join a as a1 on b.c1= a1.code and a1.type=1 
left outer join a as a2 on b.c2= a2.code and a2.type=2 
+1

_join_を使用し、_join文は使用しません。 – jarlh

関連する問題