Összegzés: ebben az oktatóanyagban megtudhatja, hogyan használhatja a MySQL alias-t a lekérdezések olvashatóságának javítása érdekében.
a MySQL kétféle álnevet támogat, amelyek oszlop alias és tábla alias néven ismertek.
MySQL alias oszlopokhoz
néha az oszlopnevek annyira technikai jellegűek, hogy a lekérdezés kimenetét nagyon nehéz megérteni. Ha egy oszlopnak leíró nevet szeretne adni, használhat oszlop álnevet.
a következő utasítás bemutatja az oszlop alias használatát:
Code language: SQL (Structured Query Language) (sql)
alias oszlophoz való hozzárendeléséhez használja a AS
kulcsszót, amelyet az alias követ. Ha az alias szóközöket tartalmaz, akkor a következőképpen kell idéznie:
Code language: SQL (Structured Query Language) (sql)
mivel a AS
kulcsszó nem kötelező, elhagyhatja azt az utasításban. Vegye figyelembe, hogy egy kifejezésnek álnevet is adhat.
nézzük meg a employees
táblázatot a minta adatbázisban.
a következő lekérdezés kiválasztja az alkalmazottak utónevét és vezetéknevét. A CONCAT_WS()
függvényt használja a keresztnév és a vezetéknév összefűzésére a teljes névbe.
Code language: SQL (Structured Query Language) (sql)
próbálja ki
az oszlop fejlécét meglehetősen nehéz elolvasni. Ennek megoldásához hozzárendelheti a kimenet oszlopfejlécét egy oszlop alias a következő lekérdezésben látható módon:
Code language: SQL (Structured Query Language) (sql)
próbálja ki
a MySQL-ben használhatja az oszlop alias a ORDER BY
, GROUP BY
és HAVING
záradékok hivatkozni az oszlopra.
a következő lekérdezés a ORDER BY
záradék oszlopaliasát használja az alkalmazott teljes nevének betűrendbe rendezéséhez:
Code language: SQL (Structured Query Language) (sql)
próbálja ki
a következő utasítás kiválasztja azokat a megrendeléseket, amelyek teljes összege meghaladja a 60000-et. Oszlop álneveket használ a GROUP BY
és HAVING
záradékokban.
Code language: SQL (Structured Query Language) (sql)
próbálja ki
vegye figyelembe, hogy nem használhat oszlop aliasot a WHERE
záradékban. Ennek az az oka, hogy amikor a MySQL kiértékeli a WHERE
záradékot, akkor a SELECT
záradékban megadott oszlopok értékei még nem kerülnek kiértékelésre.
MySQL alias táblákhoz
alias használatával más nevet adhat a táblának. A táblához aliast rendelhet a AS
kulcsszó használatával a következő szintaxisként:
Code language: SQL (Structured Query Language) (sql)
az alias egy tábla neve tábla alias. Az oszlop aliashoz hasonlóan a AS
kulcsszó is opcionális, így kihagyhatja.
ez a lekérdezés megmutatja, hogyan rendelhető a employees
tábla alias e-ként:
Code language: SQL (Structured Query Language) (sql)
miután egy táblához álnevet rendeltek, a következő szintaxissal hivatkozhat a táblázat oszlopaira:
Code language: SQL (Structured Query Language) (sql)
például:
Code language: SQL (Structured Query Language) (sql)
a táblázat álneveit gyakran használják az utasításban, amely tartalmazza INNER JOIN
, LEFT JOIN
, RIGHT JOIN
mellékmondatokban és alkérdésekben.
nézzük meg a customers
és orders
táblázatokat:
mindkét táblának ugyanaz az oszlopneve:customerNumber
.A customerNumber
oszlop minősítéséhez a tábla alias használata nélkül hibaüzenet jelenik meg, mint például:
Code language: SQL (Structured Query Language) (sql)
a hiba elkerülése érdekében a customerNumber
oszlop minősítéséhez használja a táblaalias elemet:
Code language: SQL (Structured Query Language) (sql)
próbálja ki
a fenti lekérdezés kiválasztja az ügyfél nevét és a megrendelések számát a customers
és orders
táblákból. A c
a customers
tábla táblaaliasaként, a o
pedig a orders
tábla táblaaliasaként használható. A customers
és orders
táblák oszlopaira a táblázat aliasai hivatkoznak.
ha a fenti lekérdezésben nem használja az aliast, akkor a táblázat nevét kell használnia az oszlopaira való hivatkozáshoz, ami a lekérdezést hosszadalmasá és kevésbé olvashatóvá teszi az alábbiak szerint:
Code language: SQL (Structured Query Language) (sql)
próbálja ki
ebben az oktatóanyagban megtanulta, hogyan kell használni a MySQL álneveket, beleértve az oszlop-és táblázatneveket is.
- hasznos volt ez az oktatóanyag?
- igennem