Schließt MySQL die Funktion IF () kurz?

Ich muss Daten aus einer zweiten Tabelle abfragen, aber nur, wenn eine seltene Menge von Bedingungen in der Primärtabelle erfüllt ist:

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

ie Bedingungen @a, b und c sind fast immer falsch, daher wird die Unterabfrage meines Erachtens für die meisten Zeilen in der Ergebnismenge niemals ausgeführt und ist daher viel schneller als ein Join. Das würde aber nur zutreffen, wenn die IF () -Anweisung kurzschließt.

Macht es

ielen Dank für jede Hilfe, die ihr anbieten könn

Antworten auf die Frage(8)

Ihre Antwort auf die Frage