- Akzeptiert weniger Spalten in
<derived column list>als in der Tabelle - Nur für
ValuesundSelect:FROM (VALUES | SELECT …) t(c1, c2) - Nur für
Select:FROM (SELECT …) t(c1, c2) - Nur für
Values, dann aber verpflichtend:FROM (VALUES …) t(c1, c2)
Neben Tabellen können in den From- und Join-Klauseln auch Spalten umbenannt werden.
SELECT …
FROM tbl_a [AS] a(a1, a2, …)
JOIN tbl_b [AS] b(b1, b2, …)Das wird üblicherweise benutzt, um Spalten zu benennen, die keinen Benutzerdefinierten Namen haben – wie sie zum Beispiel von values und unnest erzeugt werden.
SELECT b, a
FROM (VALUES (1, 'a')
) t(a, b)Der SQL-Standard verlangt, dass man mit dieser Syntax allen Spalten ein neuer Namen zuweist.
Erweiterungen
Manche Systeme akzeptieren es, wenn man weniger Spaltennamen angibt, als die Tabelle hat, sodass man nur den ersten Spalten einen neuen Namen zuweist.
Weiterführende Links
- Benutzerhandbuch
- Verwandte Funktionen
E051-05, “Select list items can be renamed”
Normative Referenzen
E051-09, “Rename columns in the FROM clause”, ist eine Pflichtfunktion von ISO/IEC 9075-2:2023. Die Funktionalität war bereits in SQL:92 (intermediate) vorhanden.0 Mit SQL:1999 wurde es zur Pflichtfunktion.

