В конструкциях GROUP BY, ORDER BY или HAVING псевдоним можно использовать для ссылки на столбец; также псевдонимы могут применяться с целью дать тому или иному столбцу более подходящее название:
SELECT SQRT(a*b) AS route FROM имя_таблицы GROUP BY route HAVING route > 0;
SELECT i d , COUNT(*) AS cnt FROM имя_таблицы GROUP BY i d HAVING cnt > 0;
SELECT i d AS 'Customer_identity ' FROM имя^таблицы;
Стандарт SQL запрещает ссылаться на псевдоним столбца в конструкции WHERE.
Причина этого заключается в том, что во время выполнения кода WHERE значение столбца может оказаться еще не определенным. Например, следующий запрос является недопустимым:
SELECT id, COUNT(*) AS cnt FROM имя_таблицы WHERE cnt > 0 GROUP BY id;
Конструкция WHERE выполняется для определения, какие строки должны быть включены в часть GROUP BY, в то время как HAVING применяется для определения, какие строки из набора результатов должны быть использованы.
Комментарии