Zuweisen von Spaltennamen im Resultset
Die AS-Klausel kann verwendet werden, um den Namen einer Resultsetspalte zu ändern oder um einer abgeleiteten Spalte einen Namen zuzuweisen.
Wenn eine Resultsetspalte durch einen Verweis auf eine Spalte in einer Tabelle oder Sicht definiert ist, ist der Name der Resultsetspalte identisch mit dem Namen der Spalte, auf die verwiesen wird. Die AS-Klausel kann verwendet werden, um der Resultsetspalte einen anderen Namen oder Alias zuzuweisen. Dadurch kann die Lesbarkeit verbessert werden. Beispiel:
USE AdventureWorks;
GO
SELECT EmployeeID AS "Employee Identification Number"
FROM HumanResources.Employee;
Abgeleitete Spalten sind die Spalten in der Auswahlliste, die nicht als einfacher Verweis auf eine Spalte angegeben sind. Abgeleitete Spalten besitzen keinen Namen, es sei denn, die AS-Klausel wird verwendet, um einen Namen zuzuweisen. In diesem Beispiel hätte die mit der DATEDIFF-Funktion angegebene abgeleitete Spalte keinen Namen, wenn die AS-Klausel entfernt würde:
SELECT SalesOrderID,
DATEDIFF(dd, ShipDate, GETDATE() ) AS DaysSinceShipped
FROM AdventureWorks.Sales.SalesOrderHeader
WHERE ShipDate IS NOT NULL
Die AS-Klausel ist die im ISO-Standard für das Zuweisen eines Namens zu einer Resultsetspalte definierte Syntax. Dies ist die bevorzugte, in MicrosoftSQL Server 2005 zu verwendende Syntax.
column_name AS column_alias
Oder
result_column_expression AS derived_column_name
Transact-SQL unterstützt auch folgende Syntax, um Kompatibilität mit früheren Versionen von SQL Server zu gewährleisten:
column_alias = column_name
Oder
derived_column_name = result_column_expression
Das letzte Beispiel kann z. B. wie folgt codiert werden:
SELECT SalesOrderID,
DaysSinceShipped = DATEDIFF(dd, ShipDate, GETDATE() )
FROM AdventureWorks.Sales.SalesOrderHeader
WHERE ShipDate IS NOT NULL