Összefoglaló: ebben a bemutatóban megtanulja, hogyan használja az SQL Server aliasokat, beleértve az oszlop aliasokat és a tábla aliasokat.
SQL Server oszlop alias
Amikor a SELECT
utasítással adatokat kérdez le egy táblából, az SQL Server az oszlopneveket használja a kimenet oszlopcímeként. Lásd a következő példát:
Code language: SQL (Structured Query Language) (sql)
A kimeneten jól láthatóan a first_name
és last_name
oszlopneveket használta az oszlopcímekhez.
Az ügyfelek teljes nevének kinyeréséhez a keresztnevet, a szóközt és a vezetéknevet a +
konkatenációs operátorral összefűzheti, amint az a következő lekérdezésben látható:
Code language: SQL (Structured Query Language) (sql)
A SQL Server a teljes név oszlopot ( No column name
) néven adta vissza, ami ebben az esetben nem értelmezhető.
Az oszlop vagy kifejezés ideiglenes nevének a lekérdezés végrehajtása során történő hozzárendeléséhez oszlop aliasokat használ.
Az alábbiakban az oszlop alias szintaxisát szemléltetjük:
Code language: SQL (Structured Query Language) (sql)
Ebben a szintaxisban az AS
kulcsszóval választjuk el az oszlopnevet vagy kifejezést és az aliast.
Mivel a AS
kulcsszó opcionális, az alábbiak szerint rendelhet aliast egy oszlophoz:
Code language: SQL (Structured Query Language) (sql)
A fenti példához visszatérve, a lekérdezést átírhatja egy oszlop alias használatával:
Code language: SQL (Structured Query Language) (sql)
Figyelem, ha az oszlop alias szóközöket tartalmaz, akkor idézőjelek közé kell zárnia, ahogy az a következő példában látható:
Code language: SQL (Structured Query Language) (sql)
A következő példa azt mutatja, hogyan rendelhetünk aliast egy oszlophoz:
Code language: SQL (Structured Query Language) (sql)
Ebben a példában a termékkategória oszlop alias sokkal egyértelműbb, mint a category_name
oszlopnév.
Ha egy oszlophoz aliast rendel, akkor a ORDER BY
záradékban vagy az oszlop nevét, vagy az oszlop aliasát használhatja, ahogy az a következő példában látható:
Code language: SQL (Structured Query Language) (sql)
Megjegyezzük, hogy a ORDER BY
záradék a legvégső feldolgozandó záradék, ezért az oszlop aliasai a rendezéskor ismertek.
SQL Server táblázat alias
Egy táblázatnak adható alias, amelyet korrelációs névként vagy tartományváltozóként ismerünk.
Az oszlop aliashoz hasonlóan a tábla alias is adható a AS
kulcsszóval vagy anélkül:
Code language: SQL (Structured Query Language) (sql)
Lásd a következő példát:
Code language: SQL (Structured Query Language) (sql)
Ebben a példában mind a customers
, mind a orders
táblában van egy azonos nevű customer_id
oszlop, ezért az oszlopra a következő szintaxissal kell hivatkozni:
Code language: SQL (Structured Query Language) (sql)
mint például:
Code language: SQL (Structured Query Language) (sql)
Ha nem így tennénk, az SQL szerver hibát adna ki.
A fenti lekérdezés meglehetősen nehezen olvasható. Szerencsére javíthatja az olvashatóságát a táblázat aliasának használatával a következőképpen:
Code language: SQL (Structured Query Language) (sql)
Ebben a lekérdezésben a c
a sales.customers
tábla aliasa, a o
pedig a sales.orders
tábla aliasa.
Amikor aliast rendel egy táblához, akkor az aliast kell használnia a táblázat oszlopára való hivatkozáshoz. Ellenkező esetben az SQL Server hibát fog kiadni.
Ezzel a bemutatóval megtanulta, hogyan használja az SQL Server aliasokat, beleértve az oszlop aliasokat és a tábla aliasokat.