PostgreSQL: Using Where Exist Clauso
Quando viene utilizzata una query SQL all'interno di un'altra query SQL, viene chiamata sottoquery. La domanda complicata può essere scritta facilmente dividendo una grande query in più sottoquerie. La clausola esiste viene utilizzata con una sottocquery in un'istruzione SQL. L'output di esiste dipende dai numeri di record restituiti dalla sottoquery ma non dipende dai valori dei record. Il risultato di esiste sarà vero se la sottostante associata restituisce almeno una riga. Come puoi usare esiste e non esiste la clausola in istruzioni selezionate, inserisci, aggiorna ed eliminate sono mostrate in questo tutorial utilizzando esempi diversi.
Esiste sintassi della clausola:
Seleziona Col1, Col2, Col3 ..Crea tre tabelle denominate Azienda, articoli E clienti e inserire alcuni dati. Esegui la seguente query Seleziona per mostrare il contenuto di queste tabelle.
Seleziona * dall'azienda;Esempio-1: usando la clausola esiste nella query selezionata
(a) esiste
La seguente query recupererà i record da elementi tabella basata su azienda tavolo. La sottocquery cerca tutti i record azienda tavolo dove Codice Identificativo dell'azienda Di azienda La tabella è uguale a Codice Identificativo dell'azienda Di elementi tabella e valore di telefono Il campo non è vuoto. C'è un record in azienda Tabella che non ha un numero di telefono e questo record verrà omesso dall'output.
Seleziona item_id, nome, quantitàProduzione:
Il record di LG non ha una voce del telefono nella tabella dell'azienda. Quindi non è apparso nell'output.
(b) non esiste
La clausola non esiste è opposta alla clausola. La seguente query recupererà quei record da elementi tabella quando la sottocquery restituisce falso.
Seleziona item_id, nome, quantitàProduzione:
Non ci sono record in azienda tavolo dove URL del sito è zero. Quindi l'output della sottoquery è falso per tutti i record e tutti i record della tabella degli elementi vengono recuperati.
Esempio-2: Utilizzo della clausola esiste nella query Inserisci
Secondo la seguente query di inserto, i dati verranno inseriti in elementi tavolo quando Codice Identificativo dell'azienda di entrambi azienda E clienti Le tabelle sono uguali.
Inserire gli articoliProduzione:
Ci sono tre voci per Codice Identificativo dell'azienda Nella tabella dei clienti con i valori sono 1 E 2. Quindi la sottoquery tornerà vero per tre volte e verranno inseriti tre record.
Esegui la query Seleziona per verificare il contenuto della tabella degli elementi.
Esempio-3: Utilizzo della clausola esiste nella query di aggiornamento
La seguente query aggiornerà i record di elementi tavolo dove Codice Identificativo dell'azienda è 1 e la sottoquery restituisce vero.
Aggiorna le vociProduzione:
Qui, la sottoquery tornerà vero per tre volte e Codice Identificativo dell'azienda è 1 per tre record. Tre record verranno aggiornati dopo aver eseguito la query di aggiornamento.
Esegui la query Seleziona per verificare il contenuto della tabella degli elementi.
Esempio-4: Utilizzo della clausola esiste nella query Elimina
La seguente query eliminerà quei record di elementi tavolo dove Codice Identificativo dell'azienda è 1 e la sottoquery restituisce vero.
Elimina dagli articoliProduzione:
Ci sono tre record con il valore 1 di Codice Identificativo dell'azienda E un record ha un valore del nome 'Non assegnare'. Quindi, la condizione sarà vera per tre volte ed elimina tre record da elementi tavolo.
Esegui la query Seleziona per verificare il contenuto della tabella degli elementi.
Spero che tu abbia una chiara idea di usare esiste la clausola nella query SQL dopo aver letto questo tutorial.