分配结果集列的名称

AS 子句可用来更改结果集列的名称或为派生列分配名称。

如果结果集列是通过对表或视图中某一列的引用所定义的,则该结果集列的名称与被引用列的名称相同。AS 子句可用来为结果集列分配不同的名称或别名。这样做可以增加可读性。例如:

USE AdventureWorks;
GO
SELECT EmployeeID AS "Employee Identification Number"
FROM HumanResources.Employee;

在选择列表中,有些列进行了具体指定,而不是指定为对列的简单引用,这些列便是派生列。除非使用 AS 子句分配了名称,否则派生列没有名称。在以下示例中,如果删除 AS 子句,则使用 DATEDIFF 函数指定的派生列将会没有名称:

SELECT SalesOrderID,
       DATEDIFF(dd, ShipDate, GETDATE() ) AS DaysSinceShipped
FROM AdventureWorks.Sales.SalesOrderHeader
WHERE ShipDate IS NOT NULL

AS 子句是在 ISO 标准中定义的语法,用来为结果集列分配名称。下面是要在 MicrosoftSQL Server 2005 中使用的首选语法。

column_name AS column_alias

result_column_expression AS derived_column_name

为了与 SQL Server 的早期版本兼容,Transact-SQL 还支持以下语法:

column_alias = column_name

derived_column_name = result_column_expression

例如,上一个示例可用下列代码替换:

SELECT SalesOrderID,
       DaysSinceShipped = DATEDIFF(dd, ShipDate, GETDATE() )
FROM AdventureWorks.Sales.SalesOrderHeader
WHERE ShipDate IS NOT NULL

请参阅

参考