Есть ли PL / SQL Pragma, аналогичный детерминированному, но для объема одного SQL SELECT?

в SQL Выберите оператор , я бы хотел выполнить функцию, которая Детерминированные по объему этого Выберите Выбор Заявление (или транзакция тоже было бы в порядке, тоже было бы в порядке):

select t.x, t.y, my_function(t.x) from t

Многие значения Tx являются одинаковыми, поэтому Oracle может повторить вызов той же функции снова и снова Опять же, чтобы ускорить вещи. Но если я отмечу функцию как детерминированного , результаты могут быть кэшированы между несколькими выполнениями этого запроса. Причина, по которой я не могу использовать детерминирован , заключается в том, что My_Function использует параметр конфигурации, который меняется время от времени.

Есть ли другое другое ключевое слово, которое я мог бы использовать? Есть ли уловы, что я должен знать (проблемы с памятью, параллелизма и т. Д.)? Или, может быть, любые другие трюки, такие как аналитические функции, чтобы вызвать функцию только один раз на значение tx (без серьезного воздействия производительности)?

10
задан Lukas Eder 1 September 2011 в 13:00
поделиться