Bien sûr que non, ce n'est qu'une question d'analyse syntaxique.
Il faut bien comprendre que les moteurs des SGBD lisent les requêtes pour les traduire afin de bien les exécuter.
Le select, c'est presque ce qu'il y a de moins important et c'est analysé quasiment en dernier, dès lors les alias des colonnes sont lus à la fin de l'analyse.
Au moment de l'analyse des clauses GROUP BY / HAVING, les alias ne sont pas connus et ne peuvent donc pas être utilisés.
Le fait que MySQL permette l'utilisation des alias dans ces clauses indique qu'il analyse plusieurs fois les requêtes, ce qui bien entendu a un coût.
Partager