Bruke mysql kolonne aliaser og bordaliaser

Bruke mysql kolonne aliaser og bordaliaser

MySQL Alias ​​er en funksjon som lar oss gi et midlertidig alternativt navn for en databasetabell eller kolonne. Disse alternative navnene gir enklere lesbarhet og gir ekstra funksjonalitet når du jobber med MySQL -sammenføyninger.

Denne guiden vil se på hvordan du implementerer både kolonne- og tabellaliasene i MySQL.

Før vi dykker ned i opplæringen, må du forsikre deg om at du har en MySQL -server installert og tilgjengelig på systemet ditt. For å maksimere læringsopplevelsen, anbefaler vi at du laster ned MySQL Sakila -eksempeldatabasen.

Mysql kolonne alias

MySQL støtter to typer aliaser: kolonne- og tabellaliaser.

La oss starte med kolonnealiaser og lære å implementere dem.

Den generelle syntaksen for et kolonnealias i MySQL er:

col_name som alias_navn

For å tilordne et aliasnavn til en kolonne, bruker vi som nøkkelord etterfulgt av navnet vi ønsker å bruke. Det er best å legge ved aliasnavnet ditt i sitater for ord som inneholder spesialtegn eller innfødte MySQL -nøkkelord.

MERK: AS -nøkkelordet er valgfritt, og du kan utelate det i en SQL -setning. Imidlertid, hvis andre skal lese koden din, er det bedre å legge til som nøkkelord som det er mer beskrivende.

Aliasnavnet gitt til en kolonne eller tabell er bare effektivt i omfanget av SQL -setningen der den brukes.

Eksempel: kolonnealias

La oss bruke et eksempel for å illustrere hvordan vi kan bruke kolonnealiasene i SQL -operasjonene våre. For dette eksemplet skal jeg bruke betalingstabellen i Sakila -prøvedatabasen.

Vi kan få den maksimale verdien av mengden kolonne og legge til resultatet til et aliasnavn som vist i spørringen nedenfor:

Bruk Sakila;
Velg Payment_id, Rental_id, Max (beløp) som "kostbart" fra betaling;

Når vi har utført spørringen ovenfor, vil vi få et kolonnenavn med tittelen “Costly”, som inneholder det høyeste beløpet som er betalt i betalingstabellen.

Utgangen er som vist nedenfor:

Databasen endret
+------------+-----------+--------+
| betaling_id | Rental_id | kostbar |
+------------+-----------+--------+
| 1 | 76 | 11.99 |
+------------+-----------+--------+
1 rad i sett (0.00 sek)

Dette gjør det lettere å forstå ikke bare hva kolonnen inneholder, men hva funksjonen gjør.

MySQL Table Alias

Den andre typen alias støttet av MySQL er tabellaliaser. Vi bruker hovedsakelig bordaliaser for å gi kortere navn på bordene, noe som gjør spørsmålene kortere og lettere å lese. Vi kan ALS0 bruke det når vi viser et tabellnavn mer enn en gang, for eksempel når du utfører SQL -sammenføyninger.

Den generelle syntaksen for å lage et tabellalias er som vist nedenfor:

tb_name som tb_alias

Som nevnt ovenfor er AS -nøkkelordet valgfritt når du oppretter aliaser, og du kan utelate det. Imidlertid bør du bruke det fordi det gjør ting lettere å lese og forstå.

Eksempel: Tabellalias

La oss illustrere hvordan vi bruker et tabellalias i en virkelighetsdatabase. La oss for eksempel velge verdier i adressetabellen til Sakila -databasen ved hjelp av et alias.

Tenk på spørringen nedenfor:

Velg distrikt fra adresse som addr -grense 5;

Når vi har utført spørringen, får vi distriktene i adressetabellen, som vi refererte til ved hjelp av aliaset Addr.

Utgangen er under:

+----------+
| distrikt |
+----------+
| Alberta |
| Qld |
| Alberta |
| Qld |
| Nagasaki |
+----------+
5 rader i settet (0.00 sek)

MERK: Husk at aliasnavnet tildelt en tabell eller kolonne bare er gyldig i SQL -setningen det er opprettet.

Vi kan imidlertid referere til det ved å få data til og fra det. For å få en kolonne i tabelladressen (Addr som alias), kan vi for eksempel bruke en spørring som vist nedenfor:

Velg addr.adresse_id, addr.City_id fra adresse som addr -grense 5;

Spørringen over kjører vellykket og gir oss dataene som vist i utdataene nedenfor:

+------------+---------+
| adresse_id | City_id |
+------------+---------+
| 56 | 1 |
| 105 | 2 |
| 457 | 3 |
| 491 | 4 |
| 332 | 5 |
+------------+---------+
5 rader i settet (0.01 sek)

Eksempel 2: Tabellalias på Join

En populær bruk av bordaliaser er når du utfører SQL -sammenføyninger. Et eksempel på hvordan det kan brukes på Sakila -prøvedatabasen vises i spørringen nedenfor:

Velg Cust.customer_id, concat_ws ("", first_name, last_name) som navn fra kunde som cust indre bli med i varelageret som INVT på Cust.Customer_id = Invt.butikk_idgruppe etter første_navn;

Ovennevnte spørring gir oss utdataene nedenfor:

+-------------+------------------+
| customer_id | navn |
+-------------+------------------+
| 1 | Mary Smith |
| 2 | Patricia Johnson |
+-------------+------------------+
2 rader i settet (0.02 sek)

Konklusjon

Denne opplæringen illustrerte hvordan du bruker kolonne- og tabellaliaser for å utføre operasjoner som SQL -sammenføyning eller øke SQL Queries 'lesbarhet.