Problemas com alias


Você pode usar um alias para referir a uma coluna no GROUP BY, ORDER BY, ou na parte HAVING. Aliases podem ser usados para dar as colunas nomes melhores:

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

Note que o padrão SQL não permite que você se refira a uma alias na cláusula WHERE. Isto é porque quando o código WHERE é executado o valor da coluna ainda não pode ser determinado. Por exemplo, a seguinte consulta é ilegal:

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

A instrução WHERE é executada para determinar quais linhas devem ser incluídas na parte GROUP BY enquanto HAVING é usado para decidir quais linhas o conjunto de resultados deve usar.

Retornar