I documenti di SQL-Server dicono:
column_alias può essere utilizzato in una clausola ORDER BY, ma non può essere utilizzato in una clausola WHERE, GROUP BY o HAVING .
Simile nel documento MySQL dice:
L'SQL standard non consente i riferimenti agli alias di colonna in una clausola WHERE . Questa restrizione è imposta perché quando viene valutata la clausola WHERE, il valore della colonna potrebbe non essere stato ancora determinato.
In MySQL puoi almeno riutilizzare gli alias in SELECT clausola