PostgreSQL bestaat met voorbeelden

Wat is PostgreSQL bestaat?

de exist operator test of er een rij (en) bestaat in een subquery. Dit betekent dat de operator samen met een subquery wordt gebruikt. Er wordt gezegd dat aan de exists-operator is voldaan wanneer ten minste één rij in de subquery is gevonden. U kunt deze bewerking gebruiken samen met statements selecteren, bijwerken, invoegen en verwijderen.

in deze PostgreSQL Tutorial leert u het volgende:

  • syntaxis
  • met SELECT Statement
  • met INSERT Statement
  • met UPDATE Statement
  • met DELETE Statement
  • met pgAdmin

syntaxis

hier is de syntaxis voor de PostgreSQL EXISTS statement:

WHERE EXISTS (subquery);

de bovenstaande syntaxis laat zien dat de EXISTS operator een argument opneemt, wat een subquery is. De subquery is gewoon een SELECT statement dat moet beginnen met een SELECT * in plaats van een lijst met kolomnamen of expressies.

laat met SELECT Statement

zien hoe een SELECT statement gebruikt wordt met de EXISTS operator. We hebben de volgende tabellen:

Boek:

Prijs:

Voer de volgende instructie:

SELECT *FROM BookWHERE EXISTS (SELECT * FROM Price WHERE Book.id = Price.id);

Dit geeft de volgende:

De bovenstaande commando zal alle records in de tabel met id overeenkomt met de id van dossiers door de subquery. Er is maar één identificatie gevonden. Er werd dus slechts één record geretourneerd.

met INSERT Statement

kunnen we de exist operator gebruiken in een INSERT statement. We hebben de volgende 3 tabellen:

Boek:

Prijs:

2:

We kunnen dan de volgende instructie uitvoeren:

INSERT INTO PriceSELECT id, priceFROM Price2WHERE EXISTS (SELECT id FROM Book WHERE Book.id = Price2.id);

De Prijs tabel is nu als volgt:

De rij met id 5 in de tabel met 2 geëvenaard. Dit record werd vervolgens in de prijstabel opgenomen.

met UPDATE Statement

kunnen we de exist operator gebruiken in een UPDATE statement.

Voer de volgende zoekopdracht uit:

UPDATE PriceSET price = (SELECT price FROM Price2 WHERE Price2.id = Price.id)WHERE EXISTS (SELECT id, priceFROM Price2WHERE Price2.id = Price.id);

We werken de prijskolom van de prijstabel bij. Ons doel is om de prijzen van items die een id delen hetzelfde te laten zijn. Slechts één rij werd geëvenaard, dat is, 5.

aangezien de prijzen echter gelijk zijn, dat wil zeggen 205, werd geen actualisering uitgevoerd. Als er een verschil was, zou er een update zijn gemaakt.

met DELETE Statement

een PostgreSQL DELETE statement kan gebruik maken van de exist operator. Hier is een voorbeeld:

DELETE FROM PriceWHERE EXISTS (SELECT * FROM Price2 WHERE Price.id = Price2.id);

de prijstabel is nu als volgt:

de rij met een id van 5 is verwijderd.

met pgAdmin

laten we nu eens kijken hoe deze acties kunnen worden uitgevoerd met pgAdmin.

met SELECT Statement

om hetzelfde te bereiken via pgAdmin, doe dit:

Stap 1) Log in op uw pgAdmin account.

Step 2)

  1. vanuit de navigatiebalk aan de linker muisknop Databases.
  2. Klik Op Demo.

Stap 3) Typ de query in de query-editor:

SELECT *FROM BookWHERE EXISTS (SELECT * FROM Price WHERE Book.id = Price.id);

Stap 4) Klik op de Uitvoeren knop.

het moet terugkeren de volgende:

met INSERT Statement

om hetzelfde te bereiken via pgAdmin, doe dit:

Stap 1) Log in op uw pgAdmin account.

salaristrap 2)

  1. vanuit de navigatiebalk aan de linker muisknop Databases.
  2. Klik Op Demo.

Stap 3) Typ de query in de query-editor:

INSERT INTO PriceSELECT id, priceFROM Price2WHERE EXISTS (SELECT id FROM Book WHERE Book.id = Price2.id);

Stap 4) Klik op de knop Uitvoeren.

de prijstabel moet nu als volgt zijn:

met UPDATE Statement

om hetzelfde te bereiken via pgAdmin, doe dit:

Stap 1) Log in op uw pgAdmin account.

Step 2)

  1. vanuit de navigatiebalk aan de linker muisknop Databases.
  2. Klik Op Demo.

Stap 3) Typ de query in de query-editor:

UPDATE PriceSET price = (SELECT price FROM Price2 WHERE Price2.id = Price.id)WHERE EXISTS (SELECT id, priceFROM Price2WHERE Price2.id = Price.id);

Stap 4) Klik op de Uitvoeren knop.

de prijstabel moet nu als volgt zijn:

met DELETE Statement

om hetzelfde te bereiken via pgAdmin, doe dit:

Stap 1) Log in op uw pgAdmin account.

Step 2)

  1. vanuit de navigatiebalk aan de linker muisknop Databases.
  2. Klik Op Demo.

Stap 3) Typ de query in de query-editor:

DELETE FROM PriceWHERE EXISTS (SELECT * FROM Price2 WHERE Price.id = Price2.id);

Stap 4) Klik op de Uitvoeren knop.

de prijstabel moet nu als volgt zijn:

samenvatting

  • de exist operator test of er een rij (en) bestaat in een subquery.
  • het wordt gebruikt met een subquery en er wordt gezegd dat aan de subquery is voldaan wanneer de subquery ten minste één rij retourneert.
  • het wordt gebruikt samen met Select, UPDATE, INSERT en DELETE statements.

Download de Database die in deze Tutorial wordt gebruikt

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.

Previous post 2021 verbouwingen en bouw van hotels in Disney World
Next post alle Tips die u nodig hebt voor het maken van oogmake-up op Monoliden