Присвоение имен столбцам результирующих наборов

С помощью предложения AS можно изменять имена столбцов результирующего набора и присваивать имена производным столбцам.

Если столбец результирующего набора задан ссылкой на столбец в таблице или представлении, то его имя совпадает с именем столбца, на который указывает ссылка. С помощью предложения AS можно присваивать столбцам результирующих наборов другие имена или псевдонимы. Это нужно, чтобы названия столбцов легче читались. Например:

USE AdventureWorks2008R2;
GO
SELECT BusinessEntityID AS "Employee Identification Number"
FROM HumanResources.Employee;

Производные столбцы — это столбцы в списке выборки, заданные не простой ссылкой на столбец, а каким-либо иным способом. У производных столбцов нет имени, если оно не задано предложением AS. Если бы в этом примере отсутствовало предложение AS, то производный столбец, заданный с помощью функции DATEDIFF, не имел бы имени:

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

Предложение AS — это синтаксис, заданный в стандарте ISO для присвоения имени столбцу результирующего набора. Этот синтаксис является предпочтительным для SQL Server 2005.

column_name AS column_alias

или

result_column_expression AS derived_column_name

Кроме того, Transact-SQL в целях совместимости с ранними версиями SQL Server поддерживает следующий синтаксис:

column_alias = column_name

или

derived_column_name = result_column_expression

Скажем, последний образец можно переписать так:

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

См. также

Справочник