W3C中文教程
全球最大最新的中文 Web 技术教程
HTML CSS SQL PHP COLORS MYSQL BOOTSTRAP
 

SQL 别名



通过使用 SQL,可以为表名称或列名称指定别名。


SQL 别名

通过使用 SQL,可以为表名称或列名称指定别名。

基本上,创建别名是为了让列名称的可读性更强。

列的 SQL 别名语法

SELECT column_name AS alias_name
FROM table_name;

表的 SQL 别名语法

SELECT column_name(s)
FROM table_name AS alias_name;

演示数据库

下面是选自 "Customers" 客户表的数据:

CustomerID CustomerName ContactName Address City PostalCode Country
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México 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 语句指定了两个别名,一个是 CustomerName 列的别名,一个是 ContactName 列的别名。 提示: 如果列名称包含空格,要求使用双引号或方括号:

SELECT CustomerName AS Customer, ContactName AS [Contact Person]
FROM Customers;

在下面的 SQL 语句中,我们把四个列 (Address, City, PostalCode, and Country)结合在一起,并创建一个名为 "Address" 的别名:

SELECT CustomerName, Address+', '+City+', '+PostalCode+', '+Country AS Address
FROM Customers;

表的别名实例

下面的 SQL 语句选取所有客户订单记录。我们使用 "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;

在下面的情况下,使用别名很有用:

  • 在查询中涉及超过一个表
  • 在查询中使用了函数
  • 列名称很长或者可读性差
  • 需要把两个列或者多个列结合在一起