Összefoglaló: Ebben az oktatóanyagban megtanulja, hogyan használhatja az SQL Server RIGHT JOIN záradékát két táblázat adatainak lekérdezésére.

Előadás az SQL Server RIGHT JOIN záradékához

A RIGHT JOIN két vagy több táblázat adatait egyesíti. A RIGHT JOIN záradék elkezdi az adatok kiválasztását a jobb oldali táblázatból, és összeveti a bal oldali táblázat soraival. A RIGHT JOIN egy olyan eredményhalmazt ad vissza, amely tartalmazza a jobb oldali tábla összes sorát, függetlenül attól, hogy van-e megfelelő soruk a bal oldali táblából vagy sem. Ha a jobb tábla valamely sorának nincs egyező sora a bal táblából, akkor az eredményhalmazban a bal tábla oszlopában nullák lesznek.

Az alábbiakban a RIGHT JOIN záradék szintaxisát mutatjuk be:

Code language: SQL (Structured Query Language) (sql)

Ebben a szintaxisban a T1 a bal tábla, a T2 pedig a jobb tábla.

Megjegyezzük, hogy a RIGHT JOIN és a RIGHT OUTER JOIN ugyanaz. A OUTER kulcsszó opcionális.

A RIGHT JOIN műveletet a következő Venn-diagram szemlélteti:

SQL Server RIGHT JOIN példa

A bemutatóhoz a mintaadatbázis sales.order_items és production.products tábláját fogjuk használni.

A következő utasítás visszaadja az összes order_id sort a sales.order_items táblából és a termék nevét a production.products táblából:

Code language: SQL (Structured Query Language) (sql)

Itt a kimenet:

A lekérdezés visszaadta az összes sort a production.products táblából (jobb oldali táblázat) és a sales.order_items táblából (bal oldali táblázat). Ha egy terméknek nincsenek eladásai, akkor a order_id oszlop nullát fog tartalmazni.

Az értékesítéssel nem rendelkező termékek kinyeréséhez a fenti lekérdezéshez hozzáad egy WHERE záradékot, hogy kiszűrje az értékesítéssel rendelkező termékeket:

Code language: SQL (Structured Query Language) (sql)

A következő képen látható a kimenet:

A következő Venn-diagram a fenti RIGHT JOIN műveletet szemlélteti:

Ezzel a bemutatóval megtanulta, hogyan használhatja az SQL Server RIGHT JOIN-t két táblázat adatainak lekérdezésére.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.