logo

Aliaser i SQL

  • Gjør lange eller komplekse navn lesbare
  • Forenkle sammenføyninger og underspørringer
  • Forbedre klarheten i resultatsett
  • Unngå navnekonflikter i flertabellspørringer

Det er to typer aliaser i SQL:

  • Kolonnealiaser: Midlertidige navn på kolonner i resultatsettet.
  • Tabellaliaser: Midlertidige navn for tabeller som brukes i en spørring.

Eksempel på SQL-aliaser

Vi vil bruke følgendeCustomertabell for å demonstrere alle SQL-aliaskonsepter. Denne tabellen inneholder kundeinformasjon som ID-navn, landsalder og 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');

Produksjon:



Kunde-IDKundenavnEtternavnLandAlderTelefon
1TvilThakurIndia239876543210
2SikkerChopraAustralia219876543211
3NaveenTulasiSri Lanka249876543212
4AdityaArpanØsterrike219876543213
5NishantJainSpania229876543214

1. Kolonnealiaser

Et kolonnealias brukes til å gi nytt navn til en kolonne bare for utdata fra en spørring. De er nyttige når:

  • Viser samlede data
  • Gjør resultatene mer lesbare
  • Utføre beregninger

Syntaks:

SELECT column_name AS alias_name  
FROM table_name;

Følgende tabell forklarer argumentene i detalj:

  • kolonnenavn: kolonne der vi skal lage et aliasnavn.
  • alias_name:
  • SOM: Det er valgfritt. Hvis du ikke har spesifisert det, har det ingen effekt på utførelsen av spørringen. 

Eksempel 1: Kolonnealias for å gi nytt navn til en kolonne

For å hente kunde-ID og gi den nytt navn til id i resultatsettet

SELECT CustomerID AS id  
FROM Customer;

Produksjon:

id
1
2
3
4
5

2. Tabellaliaser

Et tabellalias brukes når du vil gi en tabell et midlertidig navn for varigheten av en spørring. Tabellaliaser er spesielt nyttige i JOIN-operasjoner for å forenkle spørringer, spesielt når den samme tabellen refereres til flere ganger (som i selvkoblinger).

Eksempel 2: Tabellalias for å slå sammen tabeller

Vi ønsker å bli med i kundetabellen med seg selv for å finne kunder som har samme land og er 21 år gamle. Vi vil bruke tabellaliaser for hver forekomst av kundetabellen.

Spørsmål:

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

Produksjon:

KundenavnLand
TvilIndia
SikkerAustralia
NaveenSri Lanka
AdityaØsterrike
NishantSpania

Her er c1 og c2 aliaser for to forekomster av kundetabellen.

Kombinere kolonne- og tabellaliaser

Vi ønsker å hente kunder som er 21 år eller eldre og gi nytt navn til kolonnene for bedre klarhet. Vi vil bruke både tabell- og kolonnealiaser.

Spørsmål:

unordered_map c++
SELECT c.CustomerName AS Name c.Country AS Location  
FROM Customer AS c
WHERE c.Age >= 21;

Produksjon:

NavnSted
TvilIndia
SikkerAustralia
NaveenSri Lanka
AdityaØsterrike
NishantSpania

Praktisk bruk av SQL-aliaser

  • Bedre lesbarhet: Gjør komplekse navn kortere og lettere å forstå.
  • Forenkler spørsmål: Reduserer repetisjon spesielt i sammenføyninger.
  • Slett utdata: Gi nytt navn til kolonner for mer meningsfylte resultater.
  • Unngår konflikter: Forhindrer navnesammenstøt i flertabellspørringer.
Lag quiz