Да.
Похоже, что вы неправильно понимаете природу и то, что требуется для оптимизации запроса. Видимо, вы думаете, что есть какой-то «путь к коду», который должен выполняться иногда, а не другие. Невозможно исключить «1003 * кодированный» «путь кода» из взгляда оптимизатора. Хотя он оптимизирует запросы, с точки зрения обработки SQL, это всего лишь компилятор, а не оптимизатор.
Когда запрос оптимизирован, определяется весь путь запроса (за исключением того факта, что многие возможности оцениваются до выбора), оценивается, проверяется и компилируется. Дело не имеет значения. Чтобы ЛЮБОЙ подзапрос выполнялся, этот подзапрос должен быть оценен и скомпилирован. Тот факт, что ваш конкретный подзапрос никогда не будет выполнен, не имеет отношения к коду.
По многим причинам рекомендуется размещать код, который никогда не будет выполняться, вне программы. Будет ли выполняться ветвь в дереве запросов, определяется во время выполнения. Люди могут видеть, что он никогда не будет активирован, но оптимизатор еще не имеет такого уровня ИИ (это будет великий день, когда оптимизатор может исключить такой код).