Resume: i denne vejledning lærer du, hvordan du bruger Myskl alias til at forbedre læsbarheden af forespørgslerne.
understøtter to slags aliaser, der er kendt som kolonnealias og tabelalias.
alias for kolonner
nogle gange er kolonnenavne så Tekniske, at forespørgslens output er meget vanskeligt at forstå. Hvis du vil give en kolonne et beskrivende navn, kan du bruge et kolonnealias.
følgende erklæring illustrerer, hvordan man bruger kolonnealiaset:
Code language: SQL (Structured Query Language) (sql)
hvis du vil tildele et alias til en kolonne, skal du bruge nøgleordet AS
efterfulgt af aliaset. Hvis aliaset indeholder mellemrum, skal du citere det som følgende:
Code language: SQL (Structured Query Language) (sql)
da nøgleordet AS
er valgfrit, kan du udelade det i erklæringen. Bemærk, at du også kan give et udtryk et alias.
lad os se på employees
tabellen i eksempeldatabasen.
følgende forespørgsel vælger fornavne og efternavne på medarbejdere. Det bruger funktionen CONCAT_WS()
til at sammenkæde fornavn og efternavn til fuldt navn.
Code language: SQL (Structured Query Language) (sql)
prøv det
kolonneoverskriften er ret vanskelig at læse. For at løse dette kan du tildele kolonneoverskriften på output et kolonnealias som vist i følgende forespørgsel:
Code language: SQL (Structured Query Language) (sql)
prøv det
i klausulerne ORDER BY
, GROUP BY
og HAVING
kan du bruge kolonnealiaset til at henvise til kolonnen.
følgende forespørgsel bruger kolonnealiaset i ORDER BY
– klausulen til at sortere medarbejderens fulde navne alfabetisk:
Code language: SQL (Structured Query Language) (sql)
prøv det
følgende erklæring vælger de ordrer, hvis samlede beløb er større end 60000. Det bruger kolonnealiaser i GROUP BY
og HAVING
klausuler.
Code language: SQL (Structured Query Language) (sql)
prøv det
Bemærk, at du ikke kan bruge et kolonnealias i WHERE
klausulen. Årsagen er, at når vi evaluerer WHERE
– klausulen, er værdierne for kolonner, der er angivet i SELECT
– klausulen, endnu ikke evalueret.
alias for tabeller
du kan bruge et alias til at give en tabel et andet navn. Du tildeler en tabel et alias ved at bruge nøgleordet AS
som følgende syntaks:
Code language: SQL (Structured Query Language) (sql)
aliaset for en tabel kaldes tabelalias. Ligesom kolonnealiaset er nøgleordet AS
valgfrit, så du kan udelade det.
denne forespørgsel viser, hvordan du tildeler employees
tabelaliaset som e:
Code language: SQL (Structured Query Language) (sql)
når en tabel er tildelt et alias, kan du henvise til tabelkolonnerne ved hjælp af følgende syntaks:
Code language: SQL (Structured Query Language) (sql)
for eksempel:
Code language: SQL (Structured Query Language) (sql)
tabelaliaserne bruges ofte i den erklæring, der indeholder INNER JOIN
, LEFT JOIN
, RIGHT JOIN
klausuler og underforespørgsler.
lad os se på customers
og orders
tabellerne:
begge tabeller har samme kolonnenavn: customerNumber
.Uden at bruge tabelaliaset til at kvalificere kolonnen customerNumber
, får du en fejlmeddelelse som:
Code language: SQL (Structured Query Language) (sql)
for at undgå denne fejl skal du bruge tabelalias til at kvalificere kolonnen customerNumber
:
Code language: SQL (Structured Query Language) (sql)
prøv det
forespørgslen ovenfor vælger kundenavn og antallet af ordrer fra tabellerne customers
og orders
. Det bruger c
som et tabelalias for tabellen customers
og o
som et tabelalias for tabellen orders
. Kolonnerne i tabellerne customers
og orders
henvises til via tabelaliaserne.
hvis du ikke bruger aliaset i forespørgslen ovenfor, skal du bruge tabelnavnet til at henvise til dets kolonner, hvilket gør forespørgslen lang og mindre læsbar som følgende:
Code language: SQL (Structured Query Language) (sql)
prøv det
i denne vejledning har du lært, hvordan du bruger aliaser, herunder kolonne-og tabelaliaser.
- var denne tutorial nyttig?
- Ja