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 标准中定义的语法,用来为结果集列分配名称。下面是要在 Microsoft SQL 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 |