HAVING
satsen utvärderas före SELECT
- så servern känner ännu inte till det aliaset.
-
Först produkten av alla tabeller i
FROM
klausul bildas. -
WHERE
satsen utvärderas sedan för att eliminera rader som inte uppfyller sökvillkoret. -
Därefter grupperas raderna med hjälp av kolumnerna i
GROUP BY
klausul. -
Sedan grupper som inte uppfyller
search_condition
iHAVING
klausulen elimineras. -
Därefter uttrycken i
SELECT
mållista för uttalanden utvärderas. -
Om
DISTINCT
nyckelord som finns i select-satsen, är dubbletter av rader nu eliminerade. -
UNION
tas efter att varje delval har utvärderats. -
Slutligen sorteras de resulterande raderna enligt kolumnerna som anges i
ORDER BY
klausul. -
TOP
klausul exekveras.
Hoppas detta svarar på din fråga. Det förklarar också varför aliaset fungerar i ORDER BY
klausul.