IN number, p_date IN date )
RETURN NUMBER result_cache `
и запрос типа:
select t.*, get_kurs(t.vkd, t.ac_date) as kurs from table t
В данном случае result_cache работает или нет? Потому как закрались сомнения, если вызов функции из запроса убрать, то он отрабатывает быстро, а с вызовом на 6сек дольше
информации мало, поэтому можем только погадать на кофейной гуще. как минимум ваша функция get_kurs может выполняться 6 секунд даже для одного вызова - обратное с ваших слов не очевидно. более вероятный вариант - кэш работает, но комбинация t.vkd+ t.ac_date уникальна для каждой строки в выборке, поэтому функция выполняется для каждой строки заново и эффекта от кешированич нет.
ну если я в место (t.vkd, t.ac_date) подставлю константы то тоже все норм. Видимо вы правы, записей много и вариантов t.vkd+ t.ac_date.
Я бы понял сравнение с result cache и без, но не с функцией и без)
сравнивал, 2сек разница
Обсуждают сегодня