PostgreSQL IN

Riepilogo: in questo tutorial, imparerai come usare l’operatore PostgreSQL IN nella clausola WHERE per verificare se un valore corrisponde a qualsiasi valore in un elenco.

PostgreSQL NELLA sintassi dell’operatore

Si utilizza l’operatore IN nella clausola WHERE per verificare se un valore corrisponde a qualsiasi valore in un elenco di valori.

La sintassi dell’operatore IN è la seguente:

Code language: SQL (Structured Query Language) (sql)

L’operatore IN restituisce true se value corrisponde a qualsiasi valore nell’elenco, ovvero, value1 , value2 , …

L’elenco dei valori può essere un elenco di valori letterali come numeri, stringhe o un risultato di un’istruzione SELECT come questa:

Code language: SQL (Structured Query Language) (sql)

La query all’interno delle parentesi è chiamata subquery, che è una query annidata all’interno di un’altra query. Nota che imparerai di più sulla sottoquery nel tutorial successivo

PostgreSQL NEGLI esempi di operatori

Supponiamo di voler conoscere le informazioni di noleggio dell’id cliente 1 e 2, puoi usare l’operatore IN nella clausola WHERE come segue:

La query seguente utilizza gli operatori equal (=) e OR invece dell’operatore IN. È equivalente alla query precedente:

La query che utilizza l’operatoreIN è più breve e più leggibile della query che utilizza gli operatori equal (=) e OR. Inoltre, PostgreSQL esegue la query con l’operatore IN molto più velocemente della stessa query che utilizza un elenco di operatori OR.

PostgreSQL NON NELL’operatore

È possibile combinare l’operatore IN con l’operatore NOT per selezionare righe i cui valori non corrispondono ai valori nell’elenco.

Ad esempio, la seguente dichiarazione rileva che tutti i noleggi con l’ID cliente non sono 1 o 2.

Simile all’operatore IN, è possibile utilizzare gli operatori not equal (<>) e AND per scrivere l’operatore NOT IN:

Questa query restituisce lo stesso output della query precedente che utilizza l’operatore NOT IN.

PostgreSQL con una sottoquery

La query seguente restituisce un elenco di id di clienti dal rental tabella con la data di rientro è 2005-05-27:

Perché questa query restituisce un elenco di valori, si può utilizzare come input per il IN operatore come questo:

Per ulteriori informazioni sul sottoquery, il check-out la subquery tutorial.

In questo tutorial, hai imparato come usare l’operatore PostgreSQL IN per verificare se un valore corrisponde a qualsiasi valore in un elenco di valori.

  • Questo tutorial è stato utile ?
  • Sìno



+