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

  • SQL 别名用于为表或表中的列提供临时名称,数据库中的实际表名不会更改。
  • SQL 别名通常用于使列名更具可读性。
  • SQL 一个别名只存在于查询期间。
  • 表别名的使用是在特定SQL语句中重命名表。
  • 列别名用于为特定SQL查询重命名表的列。

列的 SQL Alias 语法:

SELECT column_name AS alias_name
FROM table_name;
WHERE [condition];

表的 SQL Alias 语法:

SELECT column_name(s)
FROM table_name AS alias_name;
WHERE [condition];

列的 Alias 实例

以下SQL语句创建两个别名,一个用于CustomerID列,另一个用于CustomerName列:

SELECT CustomerID as ID, CustomerName AS Customer
FROM Customers;

以下SQL语句创建两个别名,一个用于CustomerName列,一个用于ContactName列。注:如果别名包含空格,则需要双引号或方括号:

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

以下SQL语句创建一个名为“Address”的别名,它包含四列(Address,PostalCode,City and Country):

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

注意:要使上面的SQL语句在MySQL中工作,请使用以下命令:

SELECT CustomerName, 
CONCAT(Address,', ',PostalCode,', ',City,', ',Country) AS Address
FROM Customers;

表的 Alias 实例

以下SQL语句选择CustomerID = 4(“围绕角”)的所有订单。我们使用“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;

在下列情况下使用别名是有用的:

  • 查询涉及多个表
  • 用于查询函数
  • 需要把两个或更多的列放在一起
  • 列名长或可读性差