SQL别名用于暂时重命名表或列标题。
SQL别名
SQL别名是用来给数据库表,或在一个表中的列,临时名称。
基本上创建别名,使列名更具有可读性。
SQL别名语法列
SELECT column_name AS alias_name
FROM table_name;
SQL别名语法表
SELECT column_name(s)
FROM table_name AS alias_name;
演示数据库
在本教程中,我们将使用众所周知的Northwind示例数据库。
下面是从选择"Customers"表:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitucion 2222 | Mexico D.F. | 05021 | Mexico |
3 | Antonio Moreno Taqueria | Antonio Moreno | Mataderos 2312 | Mexico D.F. | 05023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
而从选择"Orders"表:
OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|
10354 | 58 | 8 | 1996-11-14 | 3 |
10355 | 4 | 6 | 1996-11-15 | 1 |
10356 | 86 | 6 | 1996-11-18 | 2 |
别名示例表列
以下SQL语句指定两个别名,一个用于客户名称列,一个用于联系人姓名列。 提示:需要双引号或方括号如果列名称包含空格:
在下面的SQL语句中,我们结合四列(Address, City, PostalCode和Country ),并创建一个名为别名"Address" :
例
SELECT CustomerName, Address+', '+City+', '+PostalCode+', '+Country AS
Address
FROM Customers;
试一试» 注意:要得到上面的SQL语句在MySQL的使用以下命令:
SELECT CustomerName, CONCAT(Address,', ',City,', ',PostalCode,', ',Country)
AS Address
FROM Customers;
别名示例表
下面的SQL语句从与客户选择的所有订单CustomerID=4 (绕Horn )。 我们使用"Customers"和"Orders"表,并给他们的表的别名"c"和"o"分别为(这里,我们使用的别名,使SQL短):
例
SELECT o.OrderID, o.OrderDate, c.CustomerName
FROM Customers AS c, Orders
AS o
WHERE c.CustomerName="Around the Horn" AND
c.CustomerID=o.CustomerID;
试一试» 相同的SQL语句,而不别名:
例
SELECT Orders.OrderID, Orders.OrderDate, Customers.CustomerName
FROM
Customers, Orders
WHERE Customers.CustomerName="Around the Horn" AND
Customers.CustomerID=Orders.CustomerID;
试一试» 别名可当有用:
- 有参与查询多个表
- 功能在查询中使用
- 列名是大还是不是很可读
- 两列或多列组合在一起