2017-11-09 9 views
0

サブクエリの説明を探しています。私はコールする空くことだろうかというの各セクションにサブクエリを置くとしたら、私はサブクエリを使用したOracleのスコープ

select * 
FROM my_table 
LEFT JOIN a1 on a1.e = my_table.e 
WHERE b>1 

を考えてみましょうか?

ような:そのサブクエリで

select * 
FROM my_table 
LEFT JOIN a1 on my_table.e = a.e 
LEFT JOIN (select ....)a2 on my_table.c = a2.c 
WHERE b>1 

私はA1を参照することができますか?

さらに質問を明確にする必要がある場合はお知らせください。 LATERAL

+0

いいえ、あなたは 'FROM'句で使用されるサブクエリのための' FROM'句からテーブルを参照することはできません。相関サブクエリは他のほとんどの句で使用できます。注意:これは、Oracleの最新バージョンで使用可能なラテラル・ジョインには当てはまりません。 –

+0

しかし、私がトップのSELECTにa1を含めると、それをa2で参照できますか? – thatdude99

答えて

0

はいそれは可能ですが参加:

select * 
FROM my_table 
    LEFT JOIN a1 on my_table.e = a1.e 
    LEFT JOIN LATERAL (
     select .. 
     from a1 
     where a1.e = 5 
) a2 on my_table.c = a2.c 
関連する問題