• 締切済み

【至急】SQLの結合について教えてください。

select * from A where ab = '1' and cd = '2' select ef from B where ab = '1' and cd = '2' and ef = '3' 至急質問させてください。 上記SQLを結合したいです。(Oracleです) 取得したいデータはAのテーブルの全項目で、 取得条件として、Bのテーブルの項目ef = '3' だったらという条件を加えたいです。 キー項目は両テーブルとも同じ(ab, cd)です。 どのようなSQLがスマートでしょうか。。 無知で申し訳ございませんが、ご教授いただけますと幸いです。 よろしくお願いいたします。

みんなの回答

  • t_hirai
  • ベストアンサー率28% (222/788)
回答No.2

試してないけど、こんな感じですかね。 select A.* from A where exists (select 1 from B where B.ab = A.ab and B.cd = A.cd and B.ef = 3) ;

  • t_ohta
  • ベストアンサー率38% (5238/13705)
回答No.1

select A.*, B.ef from A, B using (ab, cd) where ab = '1' and cd = '2' and B.ef = '3';

sanosano86
質問者

お礼

早速のご回答ありがとうございます!!! とても助かりました!!

関連するQ&A