PostgreSQL Kiválasztás, beszúrás, frissítés és törlés példával létezik
Amiben létezik PostgreSQL?
A PostgreSQL LÉTEZIK operátor teszteli, hogy létezik-e sor(ok) egy részlekérdezésben. Ez azt jelenti, hogy az operátort egy segédlekérdezéssel együtt használják. Az Exists operátor akkor teljesült, ha legalább egy sor található az allekérdezésben. Ezt a műveletet a SELECT, UPDATE, INSERT és DELETE utasításokkal együtt használhatja.
A Postgres létezik lekérdezési szintaxis
Itt van a szintaxis a PostgreSQL EXISTS nyilatkozat:
WHERE EXISTS (subquery);
A fenti szintaxis azt mutatja, hogy az EXISTS operátor egy argumentumot vesz fel, amely egy segédlekérdezés. Az allekérdezés egyszerűen a SELECT utasítás amelynek a SELECT * karakterrel kell kezdődnie az oszlopnevek vagy kifejezések listája helyett.
PostgreSQL A SELECT utasítással létezik
Nézzük meg, hogyan használjunk SELECT utasítást az EXISTS operátorral. A következő táblázataink vannak:
Könyv:
Ár:
Futtassa a következő utasítást:
SELECT * FROM Book WHERE EXISTS (SELECT * FROM Price WHERE Book.id = Price.id);
Ez a következőket adja vissza:
A fenti parancsnak vissza kell adnia a Book tábla összes olyan rekordját, amelynek azonosítója megegyezik az allekérdezésben szereplő rekordok azonosítójával. Csak egy azonosító egyezik. Ezért csak egy rekordot küldtek vissza.
PostgreSQL Az INSERT utasítással létezik
Használhatjuk az EXISTS operátort egy INSERT nyilatkozat. A következő 3 táblázatunk van:
Könyv:
Ár:
Ár2:
Ezután a következő utasítást futtathatjuk:
INSERT INTO Price SELECT id, price FROM Price2 WHERE EXISTS (SELECT id FROM Book WHERE Book.id = Price2.id);
Az ártáblázat most a következő:
Az Ár5 nevű táblázat 2-ös azonosítójú sora illeszkedett. Ezt a rekordot ezután beillesztették az Ártáblázatba.
A Postgres UPDATE nyilatkozattal létezik
Az EXISTS operátort használhatjuk az UPDATE utasításban.
Futtassa a következő lekérdezést:
UPDATE Price SET price = (SELECT price FROM Price2 WHERE Price2.id = Price.id) WHERE EXISTS (SELECT id, price FROM Price2 WHERE Price2.id = Price.id);
Frissítjük az Ár táblázat ár oszlopát. Célunk, hogy az azonos azonosítóval rendelkező cikkek árai azonosak legyenek. Csak egy sor egyezik meg, azaz 5.
Mivel azonban az árak megegyeznek, azaz 205-ös, nem történt frissítés. Ha lenne különbség, akkor frissítés történt volna.
A Postgres DELETE utasítással létezik
A PostgreSQL A DELETE utasítás használhatja az EXISTS operátort. Íme egy példa:
DELETE FROM Price WHERE EXISTS (SELECT * FROM Price2 WHERE Price.id = Price2.id);
Az ártáblázat most a következő:
A 5-es azonosítójú sort törölték.
PostgreSQL Létezik utasítás a pgAdmin használatával
Most nézzük meg, hogyan hajthatók végre ezek a műveletek a pgAdmin segítségével:
Az Exists lekérdezés használata PostgreSQL SELECT utasítással a pgAdmin segítségével
Az alábbiakban bemutatjuk az Exists lekérdezés használatának lépéseit PostgreSQL SELECT utasítással a pgAdmin használatával:
1. lépés) Jelentkezzen be pgAdmin fiókjába
Nyissa meg a pgAdmin alkalmazást, és jelentkezzen be fiókjába a hitelesítő adataival
2. lépés) Hozzon létre egy 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 * FROM Book WHERE EXISTS (SELECT * FROM Price WHERE Book.id = Price.id);
4. lépés) Végezze el a lekérdezést
Kattintson a Végrehajtás gombra
A következőt kell visszaadnia:
INSERT nyilatkozattal
Ha ugyanezt a pgAdminon keresztül szeretné elérni, tegye a következőket:
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:
INSERT INTO Price SELECT id, price FROM Price2 WHERE EXISTS (SELECT id FROM Book WHERE Book.id = Price2.id);
Step 4) Kattintson a Végrehajtás gombra.
Az ártáblázatnak most a következőnek kell lennie:
UPDATE nyilatkozattal
Ha ugyanezt a pgAdminon keresztül szeretné elérni, tegye a következőket:
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:
UPDATE Price SET price = (SELECT price FROM Price2 WHERE Price2.id = Price.id) WHERE EXISTS (SELECT id, price FROM Price2 WHERE Price2.id = Price.id);
Step 4) Kattintson a Végrehajtás gombra.
Az ártáblázatnak most a következőnek kell lennie:
A DELETE nyilatkozattal
Ha ugyanezt a pgAdminon keresztül szeretné elérni, tegye a következőket:
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:
DELETE FROM Price WHERE EXISTS (SELECT * FROM Price2 WHERE Price.id = Price2.id);
Step 4) Kattintson a Végrehajtás gombra.
Az ártáblázatnak most a következőnek kell lennie:
Összegzésként
- Az EXISTS operátor azt teszteli, hogy létezik-e sor(ok) egy segédlekérdezésben.
- Allekérdezéssel együtt használatos, és akkor teljesült, ha az allekérdezés legalább egy sort ad vissza.
- A SELECT, UPDATE, INSERT és DELETE utasításokkal együtt használatos.
Töltse le az oktatóanyagban használt adatbázist