sql >> Databasteknik >  >> RDS >> Mysql

Vad hände först i mysql:gå med eller var

join händer före where dock...

var klausul är ett filter för alla rader som returneras av joinen, men optimeraren känner igen det om ett index finns på A.id , kommer den att användas för att hämta rader från A den matchningen, då kommer kopplingen att ske, sedan kommer where-satsen teoretiskt att filtrera resultaten, men återigen kommer optimeraren att känna igen att villkoret redan kommer att uppfyllas så den hoppar över det som ett filter.

Allt som sagt, optimeraren kommer alltid att returnera samma resultat som skulle returneras utan optimeraren.




  1. Ladda upp dokument till Azure Data Lake och exportera data med SSIS

  2. Genomsnittlig floatinkonsekvens

  3. rekursiv funktion för att få alla barnkategorier

  4. MySQL Select Query - Få bara de första 10 tecknen i ett värde