In SQL (MSSQL, Oracle usw., was auch immer), was ist der Vorteil beim Hinzufügen von Filtern zu der JOIN-Anweisung, anstatt sie in der WHERE-Klausel zu haben?Filterung mit dem JOIN anstelle von WHERE
dh
SELECT * FROM X INNER JOIN Y ON X.A = Y.A WHERE X.B = 'SOMETHING'
gegen
SELECT * FROM X INNER JOIN Y ON X.A = Y.A AND X.B = 'SOMETHING'
Mir ist klar, dass dies nicht in allen Fällen funktioniert, aber ich habe bemerkt, dass die, indem sie eine Leistungssteigerung zu sein, in einigen Fällen erscheint Filterkriterien in der JOIN-Anweisung. Da es jedoch Teil der JOIN-Anweisung ist, kann es auch dazu führen, dass es sich etwas seltsam verhält.
Gedanken?
Duplizieren: http://stackoverflow.com/questions/1018952/condition-within-join-or-where –