Semanticamente: dopo il JOIN. Ma in questo caso, non c'è differenza nel tempo, perché è sul lato SINISTRA del JOIN.
Come già fatto, "solo le righe in A da" Ieri "sono unite a B".
L'ottimizzatore è libero di riorganizzare l'ordine delle operazioni in base alle equivalenze dell'algebra relazionale.
Questo restituisce solo A.date = "Yesterday" e si unisce B dove può trovare una partita in foo:
SELECT * FROM A
LEFT JOIN B
ON A.foo=B.foo
WHERE A.date="Yesterday"
Ciò restituisce tutti gli A prescindere da qualsiasi criterio e si unisce B dove A.date =" Ieri "E trova una corrispondenza su foo:
SELECT * FROM A
LEFT JOIN B
ON A.foo=B.foo
AND A.date="Yesterday"
fonte
2009-05-18 21:22:49
'quello che sarebbe un modo migliore di scrivere questa dichiarazione in modo che solo le righe in A da "Yesterday" sono uniti a B.' (risposta tardiva) -> 'INNER JOIN' –