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.