MariaDB社区
标题:
与列别名有关的问题
[打印本页]
作者:
jeff
时间:
2007-10-30 12:10
标题:
与列别名有关的问题
可以使用别名来引用GROUP BY、ORDER BY或HAVING子句中的列。别名也能用于为列提供更好的名称:
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
;
标准SQL不允许在WHERE子句中已用列别名。这是因为,执行WHERE代码时,可能尚未确定列值。例如,下述查询是非法的:
SELECT id, COUNT(*) AS cnt FROM
tbl_name
WHERE cnt > 0 GROUP BY id;
执行WHERE语句以确定哪些行应被包含在GROUP BY部分中,而HAVING用于确定应使用结果集中的哪些行。
作者:
mysqlkumao
时间:
2008-4-10 10:31
欢迎光临 MariaDB社区 (http://123.56.88.72/)
Powered by Discuz! X3.2