複数テーブルを結合するには?
OS:WINDOWSXP SP2
ORACLE:Oracle9i Enterprise Edition Release 9.2.0.1.0
A, B, Cというテーブルがあるとします。
それぞれのテーブルには XXカラムと YYカラムがあるとします。
2つのテーブルを結合させるには、以下のSQL文を記述すれば良いと考えています。
SELECT A.*,B.* FROM A JOIN B
ON A.XX = B.XX
3つのテーブルを結合するには、以下のSQL文を記述しています。
SELECT A.*,B.*,C.* FROM A JOIN B
ON A.XX = B.XX
JOIN C
ON A.XX = C.XX
但し、この記述方法でいきますと、Cテーブルを右側外部結合に指定した場合のみ、
ORA-00904 "C" 無効な識別子です。
というエラーメッセージが表示されます。
SELECT A.*,B.*,C.* FROM A JOIN B
ON A.XX = B.XX
RIGHT OUTER JOIN C (←LEFT OUTER、FULL OUTER)なら通ります)
ON A.XX = C.XX
何故、右側外部結合のみ不正となるのか不明であり、解決策が見つかりません。
複数のテーブルを結合する為のSQL文の記述方法を教えて頂けますでしょうか?
お礼
ありがとうございました。