PostgreSQL IN, non IN con esempi

Sommario:

Anonim

Cos'è PostgreSQL In?

L'operatore IN viene utilizzato in una clausola WHERE che consente di verificare se un valore è presente in un elenco di altri valori. In Operation aiuta a ridurre la necessità di più condizioni OR nelle istruzioni SELECT, UPDATE, INSERT o DELETE.

In questo tutorial di PostgreSQL imparerai quanto segue:

  • Cos'è PostgreSQL In?
  • Sintassi
  • Con carattere
  • Con numerico
  • Utilizzo dell'operatore NOT
  • Utilizzando pgAdmin

Sintassi

L'operatore IN assume la seguente sintassi:

value IN (value_1, value_2,… )

Il valore è il valore che stai cercando nell'elenco.

Il valore_1, il valore_2

... sono i valori della lista.

Se il valore si trova nell'elenco, l'operatore restituirà un vero.

L'elenco può essere un insieme di numeri di stringhe o anche il risultato di output di un'istruzione SELECT come mostrato di seguito:

value IN (SELECT value FROM table-name);

L'istruzione inserita tra parentesi è nota come sottoquery.

Con carattere

Dimostriamo come puoi usare l'operatore IN con i valori dei caratteri.

Considera la seguente tabella:

Dipendenti:

Eseguiamo la seguente query sulla tabella sopra:

SELECT *FROM EmployeesWHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');

Restituisce quanto segue:

Abbiamo una lista di tre nomi. Stiamo cercando se possiamo trovare qualcuno di questi nomi nella colonna dei nomi della tabella Impiegati. La Kate Joel è stata abbinata a uno dei record della tabella e i suoi dettagli sono stati restituiti.

Con numerico

Vediamo ora come possiamo usare l'operatore IN con valori numerici.

Considera la tabella dei prezzi riportata di seguito:

Prezzo:

Possiamo eseguire la seguente query sulla tabella:

SELECT *FROM PriceWHERE price IN (200, 308, 250, 550);

Ciò restituisce quanto segue:

Abbiamo creato una lista con 4 valori numerici. Stiamo verificando se possiamo abbinare uno qualsiasi di questi valori con i valori contenuti nella colonna dei prezzi della tabella dei prezzi. Sono stati trovati due valori e sono stati restituiti i relativi dettagli.

Utilizzo dell'operatore NOT

L'operatore IN può essere utilizzato insieme all'operatore NOT. Restituisce i valori che non si trovano nella colonna specificata. Useremo la tabella dei prezzi per dimostrarlo.

SELECT *FROM PriceWHERE price NOT IN (200, 400, 190, 230);

Ciò restituirà quanto segue:

Abbiamo creato una lista con 4 valori numerici. Stiamo controllando la colonna dei prezzi della tabella dei prezzi per i valori che non fanno parte dell'elenco. Non sono stati trovati due valori, 250 e 300. Quindi i loro dettagli sono stati restituiti.

Utilizzando pgAdmin

Vediamo ora come eseguire le azioni utilizzando pgAdmin.

Con carattere

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

Passaggio 1) Accedi al tuo account pgAdmin.

Passo 2)

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

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

SELECT *FROM EmployeesWHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');

Passaggio 4) Fare clic sul pulsante Esegui.

Dovrebbe restituire quanto segue:

Con numerico

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

Passaggio 1) Accedi al tuo account pgAdmin.

Passo 2)

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

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

SELECT *FROM PriceWHERE price IN (200, 308, 250, 550);

Passaggio 4) Fare clic sul pulsante Esegui.

Dovrebbe restituire quanto segue:

Utilizzo dell'operatore NOT

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

Passaggio 1) Accedi al tuo account pgAdmin.

Passo 2)

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

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

SELECT *FROM PriceWHERE price NOT IN (200, 400, 190, 230);

Passaggio 4) Fare clic sul pulsante Esegui.

Dovrebbe restituire quanto segue:

Sommario:

  • L'operatore IN viene utilizzato con l'operatore WHERE. Consente di verificare se un determinato valore è presente in una tabella specifica.
  • L'operatore IN aiuta a ridurre la necessità di più operatori OR nelle istruzioni SELECT, UPDATE, INSERT o DELETE.
  • Quando si crea un elenco di caratteri per verificare la presenza di un valore, ogni valore nell'elenco deve essere racchiuso tra virgolette singole.
  • L'operatore IN può essere utilizzato anche con valori numerici.
  • Quando l'operatore IN viene utilizzato insieme all'operatore NOT, restituisce tutti i valori che non si trovano nella colonna specificata.

Scarica il database utilizzato in questo tutorial