2013-06-06 68 views
0

執行下面的SQL語句很慢的,ENV:甲骨文9.請告知原因或提示調試。非常感謝 。
什麼使插入選擇SQL語句很慢(無結果集返回)

INSERT INTO tmp_table (col1,col2,col3,col4,col5,col6,col7,col8,col9) 
select * from my_view where col1 = 1; 

多遠我測試:執行選擇子語句成本3秒獲得1條返回的記錄,而無休止的執行,但執行時,整個語句,像掛無結果集返回。

+0

有多少列與您的選擇? – Prix

+0

tmp_table和my_view中的9列。 – user622851

+0

你有試過使用APPEND嗎? – Prix

回答

0

當一個查詢出現快速執行,在這個意義上,最後一行是迅速恢復,而不是僅僅在第一行,但它在INSERT語句中使用時運行速度很慢,通常的嫌疑人分別是:

  1. 在執行計劃中的變化,通過優化器認爲一個ALL_ROWS目標是現在適當而之前使用了FIRST_ROWS目標驅動。檢查執行計劃的變化。
  2. 一些行動作爲插入的結果執行。目標表上的緩慢觸發器或物化視圖日誌記錄是可能的原因。運行「create table ... as select ..」時不會出現這種情況。