Dokumentacja serwera SQL mówi:
alias_kolumny może być użyty w klauzuli ORDER BY, ale nie może być użyty w klauzuli WHERE, GROUP BY ani HAVING .
Podobnie w dokumentacji MySQL jest napisane:
Standardowy SQL nie zezwala na odwołania do aliasów kolumn w klauzuli WHERE . To ograniczenie jest nakładane, ponieważ podczas oceny klauzuli WHERE wartość kolumny mogła nie zostać jeszcze określona.
W MySQL możesz przynajmniej ponownie użyć aliasów w SELECT klauzula