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:

PostgreSQL A SELECT utasítással létezik

Ár:

PostgreSQL A SELECT utasítással létezik

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:

PostgreSQL A SELECT utasítással létezik

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:

PostgreSQL Az INSERT utasítással létezik

Ár:

PostgreSQL Az INSERT utasítással létezik

Ár2:

PostgreSQL Az INSERT utasítással létezik

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ő:

PostgreSQL Az INSERT utasítással létezik

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);

A Postgres UPDATE nyilatkozattal létezik

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 Postgres DELETE utasítással létezik

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

  1. A bal oldali navigációs sávban kattintson az Adatbázisok elemre.
  2. Kattintson a Demo gombra.

PostgreSQL Létezik utasítás a pgAdmin használatával

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

PostgreSQL Létezik utasítás a pgAdmin használatával

A következőt kell visszaadnia:

PostgreSQL Létezik utasítás a pgAdmin használatával

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)

  1. A bal oldali navigációs sávban kattintson az Adatbázisok elemre.
  2. Kattintson a Demo gombra.

Létezik nyilatkozat PostgreSQL pgAdmin használatával

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.

Létezik nyilatkozat PostgreSQL pgAdmin használatával

Az ártáblázatnak most a következőnek kell lennie:

Létezik nyilatkozat PostgreSQL pgAdmin használatával

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)

  1. A bal oldali navigációs sávban kattintson az Adatbázisok elemre.
  2. Kattintson a Demo gombra.

Létezik nyilatkozat PostgreSQL pgAdmin használatával

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.

PostgreSQL Létezik utasítás a pgAdmin használatával

Az ártáblázatnak most a következőnek kell lennie:

PostgreSQL Létezik utasítás a pgAdmin használatával

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)

  1. A bal oldali navigációs sávban kattintson az Adatbázisok elemre.
  2. Kattintson a Demo gombra.

PostgreSQL Létezik utasítás a pgAdmin használatával

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.

PostgreSQL Létezik utasítás a pgAdmin használatával

Az ártáblázatnak most a következőnek kell lennie:

PostgreSQL Létezik utasítás a pgAdmin használatával

Ö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