Я работаю над улучшением производительности хранимой процедуры, и наблюдается значительное замедление из-за необходимости запуска четырех очень похожих обновлений.
Я нашел информацию о подобных проблемах в MySql, которая была полезна, но я не смог реализовать то, что узнал, возможно, Oracle работает по-другому.
Среди вещей, которые я пробовал; пакетная вставка с помощью слияния, создание вторичной таблицы temp_table и работа без временных таблиц, но улучшения не произошло.
Будучи новичком в Oracle, вполне возможно, что я ошибаюсь.
Любой совет или ответы или указания к ответам были бы очень признательны, поскольку у меня кончились идеи и сейчас я работаю только с грубой силой и невежеством.
UPDATE TEMP_TABLE TI SET T.ItemPrice_One =
(
SELECT ItemPrice
FROM Temp.View_Items V
WHERE V.Item_Name = 'Item_Name_One'
AND V.ID = T.ID
AND V.Date = T.Date
);
UPDATE TEMP_TABLE TI SET T.ItemPrice_Two =
(
SELECT ItemPrice
FROM Temp.View_Items V
WHERE V.Item_Name = 'Item_Name_Two'
AND V.ID = T.ID
AND V.Date = T.Date
);
UPDATE TEMP_TABLE TI SET T.ItemPrice_Three =
(
SELECT ItemPrice
FROM Temp.View_Items V
WHERE V.Item_Name = 'Item_Name_Three'
AND V.ID = T.ID
AND V.Date = T.Date
);