Не делайте этого предположения, оно НЕПРАВИЛЬНО . Оптимизатор запросов совершенно свободен в выборе порядка оценки, который ему нравится, и SQL как язык НЕ предлагает короткое замыкание оператора. Даже если в ходе тестирования вы можете обнаружить, что функция никогда не оценивается, в процессе работы вы можете время от времени сталкиваться с условиями, которые заставляют сервер выбирать другой план выполнения и сначала оценивать функцию, а затем остальную часть выражения. Типичный пример - когда сервер замечает, что возвращаемая функция является детерминированной и не зависит от данных строки, в этом случае он сначала оценит функцию, чтобы получить значение, и после , который начинает сканирование таблицы и оцените критерии включения WHERE, используя предварительно определенное значение функции.