Sammanfattning: I den här handledningen lär du dig hur du använder SQL Server Alias, inklusive kolumnalias och tabellalias.
SQL Server kolumnalias
När du använder SELECT
-angivelsen för att fråga efter data från en tabell använder SQL Server kolumnnamnen som kolumnrubriker för resultatet. Se följande exempel:
Code language: SQL (Structured Query Language) (sql)
Som tydligt framgår av utmatningen användes kolumnnamnen first_name
och last_name
som kolumnrubriker.
För att få fram kundernas fullständiga namn kan du sammanfoga förnamn, mellanslag och efternamn med hjälp av operatören för sammanfogning +
som visas i följande fråga:
Code language: SQL (Structured Query Language) (sql)
SQL Server returnerade kolumnen för fullständigt namn som ( No column name
), vilket inte är meningsfullt i det här fallet.
För att tilldela en kolumn eller ett uttryck ett temporärt namn under exekveringen av en fråga använder du ett kolumnalias.
Nedan visas syntaxen för kolumnalias:
Code language: SQL (Structured Query Language) (sql)
I den här syntaxen använder du nyckelordet AS
för att separera kolumnnamnet eller uttrycket och aliaset.
Eftersom nyckelordet AS
är valfritt kan du tilldela ett alias till en kolumn på följande sätt:
Code language: SQL (Structured Query Language) (sql)
Tillbaka till exemplet ovan kan du skriva om frågan med hjälp av ett kolumnalias:
Code language: SQL (Structured Query Language) (sql)
Observera att om kolumnaliaset innehåller mellanslag måste du omsluta det med citationstecken, vilket visas i följande exempel:
Code language: SQL (Structured Query Language) (sql)
Följande exempel visar hur du tilldelar ett alias till en kolumn:
Code language: SQL (Structured Query Language) (sql)
I det här exemplet är kolumnaliaset för produktkategori mycket tydligare än kolumnnamnet category_name
.
När du tilldelar en kolumn ett alias kan du använda antingen kolumnnamnet eller kolumnaliaset i ORDER BY
-klausulen enligt följande exempel:
Code language: SQL (Structured Query Language) (sql)
Bemärk att ORDER BY
-klausulen är den allra sista klausulen som bearbetas, därför är kolumnaliaset känt vid sorteringstillfället.
SQL Server tabellalias
En tabell kan ges ett alias, vilket kallas korrelationsnamn eller intervallvariabel.
Som kolumnalias kan ett tabellalias tilldelas antingen med eller utan nyckelordet AS
:
Code language: SQL (Structured Query Language) (sql)
Se följande exempel:
Code language: SQL (Structured Query Language) (sql)
I det här exemplet har både tabellerna customers
och orders
en kolumn med samma namn customer_id
, därför måste du hänvisa till kolumnen med hjälp av följande syntax:
Code language: SQL (Structured Query Language) (sql)
som till exempel:
Code language: SQL (Structured Query Language) (sql)
Om du inte gör det kommer SQL-servern att ge ett fel.
Frågan ovan är ganska svår att läsa. Som tur är kan du förbättra läsbarheten genom att använda tabellaliaset på följande sätt:
Code language: SQL (Structured Query Language) (sql)
I den här frågan är c
aliaset för tabellen sales.customers
och o
aliaset för tabellen sales.orders
.
När du tilldelar ett alias till en tabell måste du använda aliaset för att hänvisa till tabellkolumnen. Annars kommer SQL Server att utfärda ett fel.
I den här handledningen har du lärt dig hur du använder SQL Server-alias, inklusive kolumnalias och tabellalias.