MySQL ALIASES别名用于为列(字段)或者数据表创建一个临时名称。
列别名使结果集中的列标题更易于阅读。表别名用于缩短SQL语句,使其更易于阅读或者方便进行自联接。
MySQL中给列COLUMN取别名的语法为:
column_name [
AS
] alias_name
MySQL中给表Table取别名的语法为:
table_name [
说明-如果alias_name中包含空格,则必须用引号引起来。-但是,在给表取别名时可以使用空格,但通常不建议使用空格。-别名只在SQL语句的作用范围内有效。
通常,别名用于使结果集中的列标题更易于阅读。例如,当使用MAX函数时,可以为MAX函数的结果加上名称。
例如:
SELECT
department,
MAX
(salary)
highest
FROM
employees
GROUP
BY
department;
在此示例中,我们将MAX(salary)字段别名为maximum。在返回结果集时,highest将显示为第二列的标题。因为highest不包含任何空格,所以不需要将highest括在引号中。
但是,使用引号也是可以的:
"highest"
在下面的示例中,我们就必须将别名括在引号中。
"highest salary"
在表上创建别名,通常用于自联接或者是要缩短表名以使SQL语句更短,更容易阅读。
p.product_id, p.product_name, suppliers.supplier_name
products p
INNER
JOIN
suppliers
ON
p.supplier_id = suppliers.supplier_id
ORDER
p.product_name
ASC
, suppliers.supplier_name
DESC
;
我们为products表创建了一个名为p的别名。 在写条件和排序的时候,就可以直接使用p。
另外一个例子:
p.product_id, p.product_name, s.supplier_name
suppliers s
p.supplier_id = s.supplier_id
, s.supplier_name
我们为suppliers表创建了s别名,为products创建了一个p别名。
原文链接:https://codingdict.com/