-3 循環有人問我,在我的學徒以下問題: 爲什麼查詢,如:優化在Oracle FOR i in (SELECT * FROM TABELKA) LOOP 效率不高?如何改變它以使其更有效率? 沒有添加任何進一步的信息。 來源 2013-07-19 Ragnar +0 什麼是你的目的是什麼? – +0 我被告知它效率不高,我必須更改該查詢。我正在考慮使用光標而不是這個循環,並改變選擇*到選擇col1,col2等 – Ragnar +0 這不是我的意思。爲什麼你必須循環選擇表中的所有記錄? –
1 收集,所有數據就進入了一個集合。繁榮!一個查詢,你沒有循環。 SELECT * BULK COLLECT INTO a_collection_type_variable FROM a_table; 來源 2013-07-19 17:06:16 +0 噢謝謝你!這是我所需要的! – Ragnar +4 這可能不是很好的建議。 Oracle 10g +將自動批量收集此類型的循環。 – +3 除非你想遍歷1000萬行......批量收集並不總是替代遊標循環。對於大集合,可能需要帶有限制的光標+批量收集。 – tbone
什麼是你的目的是什麼? –
我被告知它效率不高,我必須更改該查詢。我正在考慮使用光標而不是這個循環,並改變選擇*到選擇col1,col2等 – Ragnar
這不是我的意思。爲什麼你必須循環選擇表中的所有記錄? –