質問: ORACLEのテーブルの結合について質問させてください<(_ _)> 表A 表B ーーーーーーーーーー ----------- カラム1 カラム2 カラム1 カラム2 〇〇会社|AREA110 会社コード|REGION110 △△会社|AREA120 会社コード|REGION120 上記の表AとBをJOINしたいのですが、 ON句に表A.カラム2=表B.カラム2として結合できるようにしたいです。 つまりAREA110 =REGION110 のようにしたいです。 AREAをREGIONとして読み替えながら比較する方法はないでしょうか? ご教授よろしくお願い致します。
回答: 表A.カラム2の"AREA"を"REGION"に置換したものをサブクエリで取得し、 表B.カラム2とJOINすればよろしいかと思います。 つまり、 ``` SELECT カラム1, REPLACE(カラム2, 'AREA', 'REGION') AS カラム2 FROM 表A ``` をメインクエリのFROM句サブクエリとして取得し、JOINします。 最終的にはこんな形でしょうか: ``` SELECT * FROM ( SELECT カラム1, REPLACE(カラム2, 'AREA', 'REGION') AS カラム2 FROM 表A ) AS 表A INNER JOIN 表B ON (表A.カラム2 = 表B.カラム2) ``` 当方Oracleの実行環境がなく、SQLの正確性が確認できないので、間違っていたらすみません。