VIEW1 IS:如何在我的視圖包含UNION ALL時使Oracle使用索引?
SELECT A, B, C FROM view2
UNION ALL
SELECT A, B, C FROM view3
INNER JOIN TBL5 ON view3.CODE = TBL5.CODE
C列在源表索引,並且當我執行選擇語句的單獨它使用的索引和回來在閃蒸。當我使用視圖超時。我的印象是,Oracle重寫了對查看的查詢,並在有用的地方使用了索引,而不是做一個SELECT * FROM VIEW1
,然後在事實之後應用謂詞。
我在做什麼錯?上面的示例視圖說明了這個問題,但是我的真實視圖每個都加入了幾十個表格,因此視圖是非常必要的。
索引列是「CODE」列嗎?你說「C列」。附: http://asktom.oracle.com/pls/asktom/f?p=100:11:0::NO::P11_QUESTION_ID:625452100346586215 – Tim 2010-11-24 13:10:40