- 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-ID | Kundenavn | Etternavn | Land | Alder | Telefon |
|---|---|---|---|---|---|
| 1 | Tvil | Thakur | India | 23 | 9876543210 |
| 2 | Sikker | Chopra | Australia | 21 | 9876543211 |
| 3 | Naveen | Tulasi | Sri Lanka | 24 | 9876543212 |
| 4 | Aditya | Arpan | Østerrike | 21 | 9876543213 |
| 5 | Nishant | Jain | Spania | 22 | 9876543214 |
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:
| Kundenavn | Land |
|---|---|
| Tvil | India |
| Sikker | Australia |
| Naveen | Sri Lanka |
| Aditya | Østerrike |
| Nishant | Spania |
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:
| Navn | Sted |
|---|---|
| Tvil | India |
| Sikker | Australia |
| Naveen | Sri Lanka |
| Aditya | Østerrike |
| Nishant | Spania |
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.