в SQL Выберите оператор
, я бы хотел выполнить функцию, которая Детерминированные по объему этого Выберите
Выбор
Заявление (или транзакция тоже было бы в порядке, тоже было бы в порядке):
select t.x, t.y, my_function(t.x) from t
Многие значения Tx
являются одинаковыми, поэтому Oracle может повторить вызов той же функции снова и снова Опять же, чтобы ускорить вещи. Но если я отмечу функцию как детерминированного
, результаты могут быть кэшированы между несколькими выполнениями этого запроса. Причина, по которой я не могу использовать детерминирован
, заключается в том, что My_Function
использует параметр конфигурации, который меняется время от времени.
Есть ли другое другое ключевое слово, которое я мог бы использовать? Есть ли уловы, что я должен знать (проблемы с памятью, параллелизма и т. Д.)? Или, может быть, любые другие трюки, такие как аналитические функции, чтобы вызвать функцию только один раз на значение tx
(без серьезного воздействия производительности)?