Valglisten kan ikke altid evalueres sidst, fordi ORDER BY kan bruge aliaser, der er defineret i valglisten, så de skal udføres efterfølgende. For eksempel:
SELECT foo+bar foobar FROM table1 ORDER BY foobar
Jeg vil sige, at udførelsesrækkefølgen generelt kunne være sådan her:
- FRA
- HVOR
- GRUPPER EFTER
- VÆLG
- HAR
- BEstil efter
GROUP BY- og WHERE-sætningerne kunne byttes uden at ændre resultatet, ligesom HAVING og ORDER BY kunne.
I virkeligheden er tingene mere komplekse, fordi databasen kan omorganisere eksekveringen i henhold til forskellige eksekveringsplaner. Så længe resultatet forbliver det samme, er det lige meget, i hvilken rækkefølge det udføres.
Bemærk også, at hvis et indeks er valgt for ORDER BY-klausulen, kan rækkerne allerede være i den rigtige rækkefølge, når de læses fra disken. I dette tilfælde udføres ORDER BY-sætningen slet ikke.