Mysql Умеет ли Mysql оптимизировать вызовы одинаковых функций с одинаковыми аргументами

HORO

Новичок
Че-то в доках не нашел, умеет ли mysql оптимизировать например такое:
Код:
WHERE f1=CONCAT(v1,v2) OR f2=CONCAT(v1,v2) -- /*...
тобишь он сам додумается сохранить CONCAT(v1,v2) во временную переменную?
 

Фанат

oncle terrible
Команда форума
Тут запрос какой-то нетрадиционной ориентации.
Я бы поостерегся с таким работать в принципе.
 

HORO

Новичок
Волков бояться в лес не ходить :)
Но это запрос для примера, так сказать более наглядно
 

AnrDaemon

Продвинутый новичок
Как ты себе представляешь кеширование вариантных условий?…
 

HORO

Новичок
не понял вопрос... я имею ввиду кеширование ОДИНАКОВЫХ вызовов функций в разных частях запроса
А если аргументы статичны, то полное кеширование результата
Код:
WHERE f1=CONCAT(v1,v2) OR f2=CONCAT(v1,v2) -- /*...
если v1,v2 статика, то должен один раз вызвать concat и закешировать
если v1,v2 - например поля, то для текущей записи должен вызвать один раз concat
 
Последнее редактирование:

AnrDaemon

Продвинутый новичок
Если v1, v2 - статика, то и ПИШИ ИХ СТАТИКОЙ!!!
Зачем извращаться?… Помоги БД и она поможет тебе.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
Нет, MySQL не умеет. У Postgres есть immutable-функции.
 
  • Like
Реакции: HORO
Сверху