În SQL, aliasurile sunt nume temporare date coloanelor sau tabelelor pentru a face interogările mai ușor de citit și scris. Ele nu schimbă numele reale din baza de date și există doar pe durata acelei interogări.
- Faceți lizibile nume lungi sau complexe
- Simplificați îmbinările și subinterogările
- Îmbunătățiți claritatea în seturile de rezultate
- Evitați conflictele de denumire în interogările cu mai multe tabele
Există două tipuri de aliasuri în SQL:
- Aliasuri de coloane: Nume temporare pentru coloanele din setul de rezultate.
- Aliasuri de tabel: Nume temporare pentru tabelele utilizate într-o interogare.
Exemplu de aliasuri SQL
Vom folosi următoareleCustomertabel pentru a demonstra toate conceptele de alias SQL. Acest tabel conține informații despre clienți, cum ar fi numele ID țara vârsta și numărul de telefon.
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');
Ieșire:
| ID client | CustomerName | Nume | Ţară | Vârstă | Telefon |
|---|---|---|---|---|---|
| 1 | Îndoială | Thakur | India | 23 | 9876543210 |
| 2 | Seif | Chopra | Australia | 21 | 9876543211 |
| 3 | Naveen | Tulasi | Sri Lanka | 24 | 9876543212 |
| 4 | Aditya | Arpan | Austria | 21 | 9876543213 |
| 5 | Nishant | Jain | Spania | 22 | 9876543214 |
1. Aliasuri de coloană
Un alias de coloană este folosit pentru a redenumi o coloană doar pentru ieșirea unei interogări. Sunt utile atunci când:
- Afișarea datelor agregate
- Fă rezultatele mai lizibile
- Efectuarea calculelor
Sintaxă:
SELECT column_name AS alias_name
FROM table_name;
Următorul tabel explică argumentele în detaliu:
- nume_coloană: coloana pe care vom crea un nume de alias.
- alias_name: nume temporar pe care îl vom atribui coloanei sau tabelului.
- CA: Este optional. Dacă nu ați specificat-o, nu există niciun efect asupra execuției interogării.
Exemplul 1: Alias de coloană pentru redenumirea unei coloane
Pentru a prelua ID-ul clientului și a-l redenumi ca id în setul de rezultate
SELECT CustomerID AS id
FROM Customer;
Ieșire:
| id |
|---|
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
2. Aliasuri de tabel
Un alias de tabel este utilizat atunci când doriți să dați unui tabel un nume temporar pe durata unei interogări. Aliasurile de tabel sunt deosebit de utile în operațiunile JOIN pentru a simplifica interogările, în special atunci când același tabel este referit de mai multe ori (cum ar fi în auto-asamblare).
Exemplul 2: Alias de tabel pentru alăturarea tabelelor
Dorim să ne alăturăm tabelului Client pentru a găsi clienți care au aceeași țară și au vârsta de 21 de ani. Vom folosi aliasuri de tabel pentru fiecare instanță a tabelului Client.
Interogare:
SELECT c1.CustomerName c1.Country
FROM Customer AS c1 Customer AS c2
WHERE c1.Age = c2.Age AND c1.Country = c2.Country;
Ieșire:
| CustomerName | Ţară |
|---|---|
| Îndoială | India |
| Seif | Australia |
| Naveen | Sri Lanka |
| Aditya | Austria |
| Nishant | Spania |
Aici c1 și c2 sunt aliasuri pentru două instanțe ale tabelului Client.
Combinarea aliasurilor de coloană și tabel
Dorim să aducem clienți cu vârsta de 21 sau mai mult și să redenumim coloanele pentru o mai bună claritate. Vom folosi atât aliasuri de tabel, cât și de coloană.
Interogare:
heapify sort
SELECT c.CustomerName AS Name c.Country AS Location
FROM Customer AS c
WHERE c.Age >= 21;
Ieșire:
| Nume | Locaţie |
|---|---|
| Îndoială | India |
| Seif | Australia |
| Naveen | Sri Lanka |
| Aditya | Austria |
| Nishant | Spania |
Utilizări practice ale aliasurilor SQL
- Lizibilitate mai bună: Face numele complexe mai scurte și mai ușor de înțeles.
- Simplifică interogările: Reduce repetarea mai ales în îmbinări.
- Șterge ieșire: Redenumește coloanele pentru rezultate mai semnificative.
- Evita conflictele: Previne ciocnirile de denumire în interogările cu mai multe tabele.