logo

Aliase in SQL

In SQL sind Aliase temporäre Namen, die Spalten oder Tabellen zugewiesen werden, um das Lesen und Schreiben von Abfragen zu erleichtern. Sie ändern nicht die tatsächlichen Namen in der Datenbank und existieren nur für die Dauer dieser Abfrage.

  • Machen Sie lange oder komplexe Namen lesbar
  • Vereinfachen Sie Verknüpfungen und Unterabfragen
  • Verbessern Sie die Klarheit in Ergebnissätzen
  • Vermeiden Sie Namenskonflikte in Abfragen mit mehreren Tabellen

In SQL gibt es zwei Arten von Aliasnamen:

  • Spaltenaliase: Temporäre Namen für Spalten im Ergebnissatz.
  • Tabellenaliase: Temporäre Namen für Tabellen, die in einer Abfrage verwendet werden.

Beispiel für SQL-Aliase

Wir werden Folgendes verwendenCustomerTabelle zur Veranschaulichung aller SQL-Aliaskonzepte. Diese Tabelle enthält Kundeninformationen wie ID-Name, Land, Alter und Telefonnummer.

CREATE TABLE Customer (  
CustomerID INT PRIMARY KEY
CustomerName VARCHAR(50)
LastName VARCHAR(50)
Country VARCHAR(50)
Age INT
Phone VARCHAR(15)
);

-- Inserting sample data into the Customer table
INSERT INTO Customer (CustomerID CustomerName LastName Country Age Phone)
VALUES
(1 'Shubham' 'Thakur' 'India' 23 '9876543210')
(2 'Aman' 'Chopra' 'Australia' 21 '9876543211')
(3 'Naveen' 'Tulasi' 'Sri Lanka' 24 '9876543212')
(4 'Aditya' 'Arpan' 'Austria' 21 '9876543213')
(5 'Nishant' 'Jain' 'Spain' 22 '9876543214');

Ausgabe:



Kunden-IDKundennameNachnameLandAlterTelefon
1ZweifelnThakurIndien239876543210
2SicherChopraAustralien219876543211
3NaveenTulasiSri Lanka249876543212
4AdityaArpanÖsterreich219876543213
5NishantJainSpanien229876543214

1. Spaltenaliase

Ein Spaltenalias wird verwendet, um eine Spalte nur für die Ausgabe einer Abfrage umzubenennen. Sie sind nützlich, wenn:

  • Aggregierte Daten anzeigen
  • Ergebnisse besser lesbar machen
  • Berechnungen durchführen

Syntax:

SELECT column_name AS alias_name  
FROM table_name;

Die folgende Tabelle erläutert die Argumente im Detail:

  • Spaltenname: Spalte, für die wir einen Aliasnamen erstellen werden.
  • Aliasname: temporärer Name, den wir der Spalte oder Tabelle zuweisen werden. 
  • ALS: Es ist optional. Wenn Sie es nicht angegeben haben, hat dies keine Auswirkung auf die Abfrageausführung. 

Beispiel 1: Spaltenalias zum Umbenennen einer Spalte

Um die CustomerID abzurufen und sie im Ergebnissatz in „id“ umzubenennen

SELECT CustomerID AS id  
FROM Customer;

Ausgabe:

Ausweis
1
2
3
4
5

2. Tabellenaliase

Ein Tabellenalias wird verwendet, wenn Sie einer Tabelle für die Dauer einer Abfrage einen temporären Namen geben möchten. Tabellenaliase sind besonders hilfreich bei JOIN-Vorgängen, um Abfragen zu vereinfachen, insbesondere wenn dieselbe Tabelle mehrmals referenziert wird (wie bei Selbstverknüpfungen).

Beispiel 2: Tabellenalias zum Verbinden von Tabellen

Wir möchten die Customer-Tabelle mit sich selbst verknüpfen, um Kunden zu finden, die aus demselben Land stammen und 21 Jahre alt sind. Wir verwenden Tabellenaliase für jede Instanz der Customer-Tabelle.

Abfrage:

SELECT c1.CustomerName c1.Country  
FROM Customer AS c1 Customer AS c2
WHERE c1.Age = c2.Age AND c1.Country = c2.Country;

Ausgabe:

KundennameLand
ZweifelnIndien
SicherAustralien
NaveenSri Lanka
AdityaÖsterreich
NishantSpanien

Hier sind c1 und c2 Aliase für zwei Instanzen der Customer-Tabelle.

Kombinieren von Spalten- und Tabellenaliasnamen

Wir möchten Kunden ansprechen, die 21 Jahre oder älter sind, und benennen die Spalten zur besseren Übersichtlichkeit um. Wir werden sowohl Tabellen- als auch Spaltenaliase verwenden.

Abfrage:

Java-Aufzählungen
SELECT c.CustomerName AS Name c.Country AS Location  
FROM Customer AS c
WHERE c.Age >= 21;

Ausgabe:

NameStandort
ZweifelnIndien
SicherAustralien
NaveenSri Lanka
AdityaÖsterreich
NishantSpanien

Praktische Verwendung von SQL-Aliasnamen

  • Bessere Lesbarkeit: Macht komplexe Namen kürzer und verständlicher.
  • Vereinfacht Abfragen: Reduziert Wiederholungen, insbesondere bei Verknüpfungen.
  • Klare Ausgabe: Benennt Spalten um, um aussagekräftigere Ergebnisse zu erzielen.
  • Vermeidet Konflikte: Verhindert Namenskonflikte bei Abfragen mit mehreren Tabellen.
Quiz erstellen