Alias-Erstellung in SQL Server
-
10-10-2019 - |
Frage
Wie wir alias eine Spalte in der Tabelle in SQL Server erstellen?
Lösung
Erstellung von Alias-Namen ist sehr einfach
SELECT tableColumnName as ColumnAlias FROM Table
Eine andere Sache, die Nutzung der Aliase ist, müssen Sie daran denken, dass die Aliase verfügbar sind nach der Projektion (Auswahl), dies bedeuten, dass Sie nicht diese Aliase in FROM, WHERE, GROUP BY, HAVING
Abschnitten verwenden können. Darf nur in ORDER BY
.
EDIT: Verwendung von Aliasnamen
Tabellen:
STACK
- STACK_ID
- STACK_NAME
- STACK_ORDER
- STACK_MIN
- STACK_MAX
Falsche Anweisung:
SELECT
STACK_NAME,
STACK_MIN,
STACK_MAX,
STACK_MIN + STACK_MAX as STACK_SUM
FROM
STACK WHERE STACK_SUM = 10;
Wir verwenden in WHERE Abschnitt Spalten, die auf dieser Ebene nicht zur Verfügung steht.
Um dies zu lösen, haben wir zwei Optionen
Option One - Wir machen die Berechnung in dem Statement
SELECT
STACK_NAME,
STACK_MIN,
STACK_MAX,
STACK_MIN + STACK_MAX as STACK_SUM
FROM
STACK WHERE STACK_MIN + STACK_MAX = 10;
Option Zwei - Wir schaffen eine temporäre Tabelle
WITH STACK_SUM_TAB AS (
SELECT
STACK_NAME,
STACK_MIN,
STACK_MAX,
STACK_MIN + STACK_MAX as STACK_SUM
FROM STACK
)
SELECT
STACK_NAME,
STACK_MIN,
STACK_MAX,
STACK_SUM
FROM STACK_SUM_TAB WHERE STACK_SUM = 10;
Andere Tipps
select somecolumn as foo from bar where foo = 5
SELECT columnname AS [ColumnAliasName] FROM [TableName]
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow