Sammendrag: I denne opplæringen lærer Du Hvordan Du bruker MySQL alias for å forbedre lesbarheten av spørringene.
MySQL støtter to typer aliaser som er kjent som kolonne alias og tabell alias.
MySQL alias for kolonner
noen ganger er kolonnenavn så tekniske som gjør spørringsutgangen svært vanskelig å forstå. Hvis du vil gi en kolonne et beskrivende navn, kan du bruke et kolonnealias.
følgende setning illustrerer hvordan du bruker kolonnealiaset:
Code language: SQL (Structured Query Language) (sql)
hvis du vil tilordne et alias til en kolonne, bruker du nøkkelordet AS
etterfulgt av aliaset. Hvis aliaset inneholder mellomrom, må du sitere det som følgende:
Code language: SQL (Structured Query Language) (sql)
fordi nøkkelordet AS
er valgfritt, kan du utelate det i setningen. Merk at du også kan gi et uttrykk et alias.
La oss se på tabellen employees
i eksempeldatabasen.
følgende spørring velger fornavn og etternavn for ansatte. Den bruker funksjonen CONCAT_WS()
for å sette sammen fornavn og etternavn til fullt navn.
Code language: SQL (Structured Query Language) (sql)
Prøv Det
kolonneoverskriften er ganske vanskelig å lese. Hvis du vil løse dette, kan du tilordne kolonneoverskriften for utdata et kolonnealias som vist i følgende spørring:
Code language: SQL (Structured Query Language) (sql)
Prøv Det
I MySQL kan du bruke kolonnealiaset i ORDER BY
, GROUP BY
og HAVING
klausulene for å referere til kolonnen.
følgende spørring bruker kolonnealiaset i ORDER BY
– setningen til å sortere den ansattes fulle navn alfabetisk:
Code language: SQL (Structured Query Language) (sql)
Prøv Det
følgende setning velger ordrene hvis totale beløp er større enn 60000. Den bruker kolonnealiaser i GROUP BY
og HAVING
klausuler.
Code language: SQL (Structured Query Language) (sql)
Prøv Det
Legg Merke til at du ikke kan bruke et kolonnealias i WHERE
– klausulen. Årsaken er at Når MySQL evaluerer WHERE
– klausulen, blir verdiene av kolonner angitt i SELECT
– klausulen ikke evaluert ennå.
MySQL alias for tabeller
du kan bruke et alias for å gi en tabell et annet navn. Du tilordner en tabell et alias ved hjelp av nøkkelordet AS
som følgende syntaks:
Code language: SQL (Structured Query Language) (sql)
aliaset for en tabell kalles tabellalias. Som kolonnealiaset er AS
søkeordet valgfritt, slik at du kan utelate det.
denne spørringen viser hvordan du tilordner employees
tabellaliaset som e:
Code language: SQL (Structured Query Language) (sql)
Når en tabell er tilordnet et alias, kan du referere til tabellkolonnene ved hjelp av følgende syntaks:
Code language: SQL (Structured Query Language) (sql)
for eksempel:
Code language: SQL (Structured Query Language) (sql)
tabellaliasene brukes ofte i setningen som inneholder INNER JOIN
, LEFT JOIN
, RIGHT JOIN
klausuler og subqueries.
La oss se på customers
og orders
tabellene:
begge tabellene har samme kolonnenavn:customerNumber
.Uten å bruke tabellaliaset for å kvalifisere kolonnen customerNumber
, får du en feilmelding som:
Code language: SQL (Structured Query Language) (sql)
for å unngå denne feilen bruker du tabellalias til å kvalifisere customerNumber
– kolonnen:
Code language: SQL (Structured Query Language) (sql)
Prøv Det
spørringen ovenfor velger kundenavn og antall bestillinger fra customers
og orders
tabellene. Den bruker c
som et tabellalias for customers
– tabellen og o
som et tabellalias for orders
– tabellen. Kolonnene i tabellene customers
og orders
refereres til via tabellaliasene.
hvis du ikke bruker aliaset i spørringen ovenfor, må du bruke tabellnavnet til å referere til kolonnene, noe som gjør spørringen lang og mindre lesbar som følgende:
Code language: SQL (Structured Query Language) (sql)
Prøv Det
i denne opplæringen har du lært Hvordan Du bruker MySQL-aliaser, inkludert kolonne-og tabellaliaser.
- Var denne opplæringen nyttig?
- YesNo