PostgreSQL Illesztési típusok: Belső, Külső, Bal, Jobb
⚡ Okos összefoglaló
PostgreSQL Az illesztések két vagy több tábla sorait kérik le és kombinálják egy megosztott kulcs használatával, és belső illesztéseket tartalmaznak, mint például a theta, az EQUI és a natural, valamint külső illesztéseket, amelyek lefedik a bal, jobb és teljes eredményeket.

Mik azok a csatlakozások PostgreSQL?
PostgreSQL csatlakozik egynél több táblából történő adatlekérésre szolgálnak. Az illesztések (Join) segítségével a SELECT és a JOIN utasításokat egyetlen utasítássá egyesíthetjük. Egy JOIN feltételt adunk az utasításhoz, és az összes olyan sort visszaadjuk, amely megfelel a feltételeknek. A különböző táblák értékei a közös oszlopok alapján vannak kombinálva. A közös oszlop többnyire az első tábla elsődleges kulcsa és a második tábla idegen kulcsa.
PostgreSQL Csatlakozási típusok
Kétféle csatlakozás létezik PostgreSQL:
- Belső csatlakozások
- Külső csatlakozások
PostgreSQL Belső összekapcsolás
3 típusú belső csatlakozás létezik PostgreSQL:
- Theta csatlakozzon
- Természetes csatlakozás
- EQUI csatlakozás
Theta Join
A théta összekapcsolás lehetővé teszi két tábla összekapcsolását a théta által képviselt feltétel alapján. A théta csatlakozások minden összehasonlító operátorral működhetnek. A legtöbb esetben a théta csatlakozást belső csatlakozásnak nevezik.
A theta join a JOIN legalapvetőbb típusa. Visszaadja a táblák összes sorát, ahol a JOIN feltétel teljesül.
Syntax:
SELECT columns FROM table-1 INNER JOIN table-2 ON table-1.column = table-2.column;
Tekintsük a Demo adatbázis alábbi táblázatait:
Könyv:
Ár:
Szeretnénk látni az egyes könyvek nevét és a hozzá tartozó árat. A következő parancsot futtathatjuk:
SELECT Book.name, Price.price FROM Book INNER JOIN Price ON Book.id = Price.id;
Ez a következőt adja vissza:
Csak 3 sor felelt meg az összekapcsolási feltételnek.
EQUI Csatlakozás
Az EQUI join lehetőséget biztosít két tábla összekapcsolására az elsődleges kulcs/idegen kulcs kapcsolat alapján. Például:
SELECT * FROM Book JOIN Price ON Book.id = Price.id;
Ez a következőt adja vissza:
Mindkét táblából a rekordok a közös oszlopok, azaz az id oszlop alapján kerültek visszaadásra.
Természetes csatlakozás
Ez a fajta csatlakozás egy másik módot kínál az EQUI-csatlakozás írására. Az előző példánkat javíthatjuk a NATURAL kulcsszó hozzáadásával, az alábbiak szerint:
SELECT * FROM Book NATURAL JOIN Price;
Ez a következőt adja vissza:
Csak egy azonosítóoszlop került visszaadásra. A NATURAL JOIN meg tudta jegyezni, hogy az id oszlop közös a két táblában. Csak egy került vissza.
PostgreSQL Külső csatlakozás
3 típusú külső csatlakozás létezik PostgreSQL:
- Bal külső csatlakozás
- Jobb külső csatlakozás
- Teljes külső csatlakozás
PostgreSQL Bal külső csatlakozás
A LEFT OUTER JOIN a táblázat összes sorát a bal oldalon, és a jobb oldali táblázatban csak azokat a sorokat adja vissza, ahol az összekapcsolási feltétel teljesült.
Syntax:
SELECT columns FROM table-1 LEFT OUTER JOIN table-2 ON table-1.column = table-2.column;
Látnunk kell az egyes könyvek nevét és a hozzá tartozó árat. A következő parancsot futtathatjuk:
SELECT Book.name, Price.price FROM Book LEFT JOIN Price ON Book.id = Price.id;
Ez a következőket adja vissza:
A Könyv táblázat mind a 4 sora visszakerült. Az Ár táblázatból mindössze 3 sor felelt meg az összekapcsolási feltételnek. Ezért visszaküldték őket. Az utolsó könyvnek nincs megfelelő árértéke.
PostgreSQL Jobb külső csatlakozás
A JOBB KÜLSŐ ÖSSZEFÜGGÉS visszaadja a táblázat összes sorát a jobb oldalon, és a táblázat összes sorát a bal oldalon, ahol az összekapcsolási feltétel teljesült.
Syntax:
SELECT columns FROM table-1 RIGHT OUTER JOIN table-2 ON table-1.column = table-2.column;
Például:
SELECT Book.name, Price.price FROM Book RIGHT JOIN Price ON Book.id = Price.id;
Ez a következőket adja vissza:
A Price tábla összes sora visszaadásra került. A Book tábla csak azokat a sorait adta vissza, amelyek megfeleltek az illesztési feltételnek. A 3. sorban a name paraméternek nincs értéke, mivel nem található egyezés.
Teljes külső csatlakozás PostgreSQL
Ez a típusú JOIN a táblázat összes sorát a bal oldalon, a táblázat összes sorát pedig a jobb oldalon nullával adja vissza, ahol az összekapcsolási feltétel nem teljesül.
Syntax:
SELECT columns FROM table-1 FULL OUTER JOIN table-2 ON table-1.column = table-2.column;
Például:
SELECT Book.name, Price.price FROM Book FULL OUTER JOIN Price ON Book.id = Price.id;
Ez a következőket adja vissza:
Az összes tábla összes sora visszakerült, nullákkal, ahol nem található egyezés.
pgAdmin használatával
A fenti feladatok a pgAdminban a következőképpen hajthatók végre. A következő szakaszok lépésről lépésre bemutatják az egyes illesztési típusokat.
pgAdmin belső csatlakozás
Az alábbi lépések bemutatják, hogyan futtathatók az egyes belső illesztési változatok a pgAdminban.
A Theta használata Csatlakozzon PostgreSQL pgAdmin használatával
Az alábbiakban a Theta Join használatának lépései találhatók. PostgreSQL pgAdmin használatával:
1. lépés) Jelentkezzen be pgAdmin fiókjába
Nyissa meg a pgAdmin alkalmazást, és jelentkezzen be a hitelesítő adataival
2. lépés) Hozzon létre bemutató adatbázist
- A bal oldali navigációs sávban kattintson az Adatbázisok elemre.
- Kattintson a Demo gombra.
3. lépés) Írja be a lekérdezést
Írja be az alábbi lekérdezést a lekérdezésszerkesztőbe:
SELECT Book.name, Price.price FROM Book INNER JOIN Price ON Book.id = Price.id;
4. lépés) Hajtsa végre a lekérdezést
Kattintson a Végrehajtás gombra
A következőt kell visszaadnia:
EQUI Csatlakozás
Step 1) Jelentkezzen be pgAdmin fiókjába.
Step 2)
- A bal oldali navigációs sávban kattintson az Adatbázisok elemre.
- Kattintson a Demo gombra.
Step 3) Írja be a lekérdezést a lekérdezésszerkesztőbe:
SELECT * FROM Book JOIN Price ON Book.id = Price.id;
Step 4) Kattintson a Végrehajtás gombra.
A következőt kell visszaadnia:
Természetes csatlakozás
Step 1) Jelentkezzen be pgAdmin fiókjába.
Step 2)
- A bal oldali navigációs sávban kattintson az Adatbázisok elemre.
- Kattintson a Demo gombra.
Step 3) Írja be a lekérdezést a lekérdezésszerkesztőbe:
SELECT * FROM Book NATURAL JOIN Price;
Step 4) Kattintson a Végrehajtás gombra.
A következőt kell visszaadnia:
pgAdmin Egyszerű belső csatlakozás
Step 1) Jelentkezzen be pgAdmin fiókjába.
Step 2)
- A bal oldali navigációs sávban kattintson az Adatbázisok elemre.
- Kattintson a Demo gombra.
Step 3) Írja be a lekérdezést a lekérdezésszerkesztőbe:
SELECT Book.name, Price.price FROM Book INNER JOIN Price ON Book.id = Price.id;
Step 4) Kattintson a Végrehajtás gombra.
A következőt kell visszaadnia:
pgAdmin külső csatlakozás
Ezután futtassa a három külső illesztési változatot a pgAdminban az alábbi lépésekkel.
Bal külső csatlakozás
Step 1) Jelentkezzen be pgAdmin fiókjába.
Step 2)
- A bal oldali navigációs sávban kattintson az Adatbázisok elemre.
- Kattintson a Demo gombra.
Step 3) Írja be a lekérdezést a lekérdezésszerkesztőbe:
SELECT Book.name, Price.price FROM Book LEFT JOIN Price ON Book.id = Price.id;
Step 4) Kattintson a Végrehajtás gombra.
A következőt kell visszaadnia:
Jobb külső csatlakozás
Step 1) Jelentkezzen be pgAdmin fiókjába.
Step 2)
- A bal oldali navigációs sávban kattintson az Adatbázisok elemre.
- Kattintson a Demo gombra.
Step 3) Írja be a lekérdezést a lekérdezésszerkesztőbe:
SELECT Book.name, Price.price FROM Book RIGHT JOIN Price ON Book.id = Price.id;
Step 4) Kattintson a Végrehajtás gombra.
A következőt kell visszaadnia:
Teljes külső csatlakozás
Step 1) Jelentkezzen be pgAdmin fiókjába.
Step 2)
- A bal oldali navigációs sávban kattintson az Adatbázisok elemre.
- Kattintson a Demo gombra.
Step 3) Írja be a lekérdezést a lekérdezésszerkesztőbe:
SELECT Book.name, Price.price FROM Book FULL OUTER JOIN Price ON Book.id = Price.id;
Step 4) Kattintson a Végrehajtás gombra.
A következőt kell visszaadnia:
Töltse le az oktatóanyagban használt adatbázist





























