(mysql.info) problems-with-alias
Info Catalog
(mysql.info) problems-with-null
(mysql.info) query-issues
(mysql.info) non-transactional-tables
A.5.4 Problems with Column Aliases
----------------------------------
You can use an alias to refer to a column in `GROUP BY', `ORDER BY', or
`HAVING' clauses. Aliases can also be used to give columns better names:
SELECT SQRT(a*b) AS root FROM TBL_NAME GROUP BY root HAVING root > 0;
SELECT id, COUNT(*) AS cnt FROM TBL_NAME GROUP BY id HAVING cnt > 0;
SELECT id AS 'Customer identity' FROM TBL_NAME;
Standard SQL doesn't allow you to refer to a column alias in a `WHERE'
clause. This restriction is imposed because when the `WHERE' code is
executed, the column value may not yet be determined. For example, the
following query is illegal:
SELECT id, COUNT(*) AS cnt FROM TBL_NAME WHERE cnt > 0 GROUP BY id;
The `WHERE' statement is executed to determine which rows should be
included in the `GROUP BY' part, whereas `HAVING' is used to decide
which rows from the result set should be used.
Info Catalog
(mysql.info) problems-with-null
(mysql.info) query-issues
(mysql.info) non-transactional-tables
automatically generated byinfo2html