PostgreSQL Esiste con Seleziona, Inserisci, Aggiorna ed Elimina Esempio

In cosa esiste PostgreSQL?

Migliori PostgreSQL ESISTE L'operatore verifica se esistono righe in una sottoquery. Ciรฒ significa che l'operatore viene utilizzato insieme a una sottoquery. Si dice che l'operatore Exists sia stato soddisfatto quando viene trovata almeno una riga nella sottoquery. รˆ possibile utilizzare questa operazione insieme alle istruzioni SELECT, UPDATE, INSERT e DELETE.

Postgres esiste la sintassi della query

Ecco la sintassi per il PostgreSQL Dichiarazione EXISTS:

WHERE EXISTS (subquery);

La sintassi precedente mostra che l'operatore EXISTS accetta un argomento, che รจ una sottoquery. La sottoquery รจ semplicemente a Istruzione SELECT che dovrebbe iniziare con SELECT * anzichรฉ con un elenco di nomi di colonne o espressioni.

PostgreSQL Esiste con l'istruzione SELECT

Vediamo come usare un'istruzione SELECT con l'operatore EXISTS. Abbiamo le seguenti tabelle:

Libro:

PostgreSQL Esiste con l'istruzione SELECT

Prezzo:

PostgreSQL Esiste con l'istruzione SELECT

Eseguire la seguente istruzione:

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

Questo restituisce quanto segue:

PostgreSQL Esiste con l'istruzione SELECT

Il comando precedente dovrebbe restituire tutti i record nella tabella Book il cui ID corrisponde all'ID di qualsiasi record della sottoquery. รˆ stato abbinato un solo ID. Pertanto, รจ stato restituito un solo record.

PostgreSQL Esiste con l'istruzione INSERT

Possiamo usare l'operatore EXISTS in an Istruzione INSERTAbbiamo le seguenti 3 tabelle:

Libro:

PostgreSQL Esiste con l'istruzione INSERT

Prezzo:

PostgreSQL Esiste con l'istruzione INSERT

Prezzo2:

PostgreSQL Esiste con l'istruzione INSERT

Possiamo quindi eseguire la seguente istruzione:

INSERT INTO Price
SELECT id, price
FROM Price2
WHERE EXISTS (SELECT id
              FROM Book
              WHERE Book.id = Price2.id);

La tabella dei prezzi รจ ora la seguente:

PostgreSQL Esiste con l'istruzione INSERT

La riga con ID 5 nella tabella denominata Prezzo2 รจ stata abbinata. Questo record รจ stato poi inserito nella tabella Prezzi.

Postgres esiste con l'istruzione UPDATE

Possiamo utilizzare l'operatore EXISTS in un'istruzione UPDATE.

Esegui la seguente query:

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

Postgres esiste con l'istruzione UPDATE

Stiamo aggiornando la colonna dei prezzi della tabella Prezzi. Il nostro obiettivo รจ che i prezzi degli articoli che condividono un ID siano gli stessi. รˆ stata abbinata solo una riga, ovvero 5.

Tuttavia, poichรฉ i prezzi sono uguali, cioรจ 205, non รจ stato effettuato alcun aggiornamento. Se ci fosse stata una differenza, sarebbe stato effettuato un aggiornamento.

Postgres esiste con l'istruzione DELETE

A PostgreSQL L'istruzione DELETE puรฒ utilizzare l'operatore EXISTS. Ecco un esempio:

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

La tabella dei prezzi รจ ora la seguente:

Postgres esiste con l'istruzione DELETE

La riga con ID 5 รจ stata eliminata.

PostgreSQL Esiste una dichiarazione che utilizza pgAdmin

Ora vediamo come รจ possibile eseguire queste azioni utilizzando pgAdmin:

Come utilizzare la query esistente in PostgreSQL con l'istruzione SELECT utilizzando pgAdmin

Di seguito sono riportati i passaggi per utilizzare la query Esiste PostgreSQL con l'istruzione SELECT utilizzando pgAdmin:

Passaggio 1) Accedi al tuo account pgAdmin

Apri pgAdmin e accedi al tuo account utilizzando le tue credenziali

Passaggio 2) Creare un database dimostrativo

  1. Dalla barra di navigazione a sinistra, fare clic su Database.
  2. Fare clic su Demo.

PostgreSQL Esiste una dichiarazione che utilizza pgAdmin

Passaggio 3) Digitare la query

Digita la query seguente nell'editor di query:

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

Passaggio 4) Eseguire la query

Fare clic sul pulsante Esegui

PostgreSQL Esiste una dichiarazione che utilizza pgAdmin

Dovrebbe restituire quanto segue:

PostgreSQL Esiste una dichiarazione che utilizza pgAdmin

Con l'istruzione INSERT

Per ottenere lo stesso risultato tramite pgAdmin, procedi come segue:

Passo 1) Accedi al tuo account pgAdmin.

Passo 2)

  1. Dalla barra di navigazione a sinistra, fare clic su Database.
  2. Fare clic su Demo.

Esiste la dichiarazione in PostgreSQL utilizzando pgAdmin

Passo 3) Digita la query nell'editor di query:

INSERT INTO Price
SELECT id, price
FROM Price2
WHERE EXISTS (SELECT id
              FROM Book
              WHERE Book.id = Price2.id);

Passo 4) Fare clic sul pulsante Esegui.

Esiste la dichiarazione in PostgreSQL utilizzando pgAdmin

La tabella dei prezzi dovrebbe ora essere la seguente:

Esiste la dichiarazione in PostgreSQL utilizzando pgAdmin

Con la dichiarazione di AGGIORNAMENTO

Per ottenere lo stesso risultato tramite pgAdmin, procedi come segue:

Passo 1) Accedi al tuo account pgAdmin.

Passo 2)

  1. Dalla barra di navigazione a sinistra, fare clic su Database.
  2. Fare clic su Demo.

Esiste la dichiarazione in PostgreSQL utilizzando pgAdmin

Passo 3) Digita la query nell'editor di query:

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

Passo 4) Fare clic sul pulsante Esegui.

PostgreSQL Esiste una dichiarazione che utilizza pgAdmin

La tabella dei prezzi dovrebbe ora essere la seguente:

PostgreSQL Esiste una dichiarazione che utilizza pgAdmin

Con l'istruzione DELETE

Per ottenere lo stesso risultato tramite pgAdmin, procedi come segue:

Passo 1) Accedi al tuo account pgAdmin.

Passo 2)

  1. Dalla barra di navigazione a sinistra, fare clic su Database.
  2. Fare clic su Demo.

PostgreSQL Esiste una dichiarazione che utilizza pgAdmin

Passo 3) Digita la query nell'editor di query:

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

Passo 4) Fare clic sul pulsante Esegui.

PostgreSQL Esiste una dichiarazione che utilizza pgAdmin

La tabella dei prezzi dovrebbe ora essere la seguente:

PostgreSQL Esiste una dichiarazione che utilizza pgAdmin

Sintesi

  • L'operatore EXISTS verifica se esistono righe in una sottoquery.
  • Viene utilizzato con una sottoquery e si dice che sia stato soddisfatto quando la sottoquery restituisce almeno una riga.
  • Viene utilizzato insieme alle istruzioni SELECT, UPDATE, INSERT e DELETE.

Scarica il database utilizzato in questo tutorial

Riassumi questo post con: