PostgreSQL LÉTEZIK SELECT-tel Operator (Példa)
⚡ Okos összefoglaló
PostgreSQL Az EXISTS egy logikai operátor, amely azt vizsgálja, hogy egy korreláló allekérdezés visszaad-e valamilyen sort, lehetővé téve a SELECT, INSERT, UPDATE és DELETE utasítások számára az adatok hatékony szűrését az egyező rekordok megléte vagy hiánya alapján.

Mi LÉTEZIK benne? PostgreSQL?
Az PostgreSQL LÉTEZIK Az operátor azt vizsgálja, hogy egy sor(ok) létezik-e egy(ek) egy allekérdezésben. Ez azt jelenti, hogy az operátort egy allekérdezéssel együtt használjuk. Az EXISTS operátor akkor teljesül, ha legalább egy sor található az allekérdezésben. Ez a művelet a SELECT, UPDATE, INSERT és DELETE utasításokkal együtt használható.
PostgreSQL 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 LÉTEZIK SELECT utasítással
Nézzük meg, hogyan használhatunk egy SELECT utasítást az EXISTS operátorral. A következő táblázatokkal rendelkezünk:
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 LÉTEZIK INSERT utasítással
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.
PostgreSQL LÉTEZIK FRISSÍTÉSI utasítással
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.
PostgreSQL LÉTEZIK DELETE utasítással
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 EXISTS utasítás a pgAdmin használatával
Az SQL shell-en túl ugyanazok az EXISTS lekérdezések vizuálisan is végrehajthatók a pgAdmin felületén keresztül. Most nézzük meg, hogyan hajthatók végre ezek a műveletek a pgAdmin használatával:
SELECT utasítással
Az alábbiakban egy EXISTS lekérdezés használatának lépései láthatók a következőben: PostgreSQL egy SELECT utasítással a pgAdmin használatával:
Step 1) Jelentkezzen be pgAdmin fiókjába. Nyissa meg a pgAdmin-t, és jelentkezzen be fiókjába a hitelesítő adataival.
Step 2) Hozz létre egy demó adatbázist.
- A bal oldali navigációs sávon kattintson az Adatbázisok elemre.
- Kattintson a Demo gombra.
Step 3) Í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);
Step 4) 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ávon 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ávon 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ávon 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:
Töltse le az oktatóanyagban használt adatbázist





















