Мне нужно запросить данные из второй таблицы, но только если выполняется редкий набор условий в основной таблице:
SELECT ..., IF(a AND b AND c AND (SELECT 1 FROM tableb ...)) FROM tablea ...
условия a, b и c почти всегда ложны, поэтому я думаю, что подзапрос никогда не будет выполняться для большинства строк в наборе результатов и, следовательно, будет намного быстрее, чем соединение. Но это будет верно только в случае короткого замыкания оператора IF ().
Верно?
Спасибо за любую помощь, которую вы можете оказать.