¿MySQL cortocircuita la función IF ()?

Necesito consultar datos de una segunda tabla, pero solo si se cumple un conjunto raro de condiciones en la tabla primaria:

SELECT ..., IF(a AND b AND c AND (SELECT 1 FROM tableb ...)) FROM tablea ...

Las condiciones a, byc son casi siempre falsas, por lo que creo que la subconsulta nunca se ejecutará para la mayoría de las filas en el conjunto de resultados y, por lo tanto, será mucho más rápido que una unión. Pero eso solo sería cierto si la declaración IF () cortocircuita.

¿Lo hace?

Gracias por cualquier ayuda que ustedes pueden proporcionar.

Respuestas a la pregunta(4)

Su respuesta a la pregunta