1
這裏的文檔:http://download-east.oracle.com/docs/cd/B12037_01/server.101/b10759/queries003.htm甲骨文層次查詢的執行步驟
這是它描述的執行順序:
- 聯接,如果存在的話,被評爲 第一,是否參加指定的 FROM子句或WHERE 子句謂詞。
- CONNECT BY條件是 評估。
- 評估任何剩餘的WHERE子句 謂詞。
我的問題是,從上面的第1部分適用於嵌套查詢。舉例來說,如果我有:
select * from foo
where exists (select 'x' from bar
where bar.foo_id = foo.foo_id
start with bar.id is null
connect by prior bar.id = bar.parent_id)
請問在where子句立即得到執行,或者,因爲foo.foo_id在這方面實際上是一個值的加入,它是在第3部分執行其中的其餘部分單值條件限制是否被執行?