18.15 Problèmes avec alias

Vous pouvez utiliser les alias pour faire référence à une colonne dans les clauses GROUP BY, ORDER BY ou HAVING. Les alias peuvent aussi servir à donner d'autres noms à certaines colonnes

SELECT SQRT(a*b) as rt FROM table_name GROUP BY rt HAVING rt > 0;
SELECT id,COUNT(*) AS cnt FROM table_name GROUP BY id HAVING cnt > 0;
SELECT id AS "Customer identity" FROM table_name;

N'oubliez pas que la norme ANSI SQL ne vous autorise pas à utiliser un alias dans les clauses WHERE. En effet, dans la clause WHERE les valeurs des colonnes n'ont pas encore été affectée. Par exemple, la commande suivante n'est pas valide :

SELECT id,COUNT(*) AS cnt FROM table_name WHERE cnt > 0 GROUP BY id;

La commande WHERE est exécutée pour déterminer quelle ligne doit être inclus dans la clause GROUP BY tandis que HAVING sert à reconnaître les lignes du résultat qui seront utilisées.