Clausola SQL Where su più condizioni

Clausola Sql Where Su Piu Condizioni



I database sono un elemento fondamentale delle applicazioni moderne. Tuttavia, i database memorizzano un'enorme quantità di dati. Quindi, abbiamo bisogno di modi per filtrare i dati e recuperare solo i record necessari.

Uno dei metodi di filtraggio dei dati più diffusi di SQL utilizza la clausola WHERE. La clausola WHERE in SQL ci consente di filtrare i record in base a una determinata condizione. Questa clausola può specificare una o più condizioni che ci consentono di filtrare i record restituiti da un'istruzione SELECT.







Questo tutorial esplora come lavorare con la clausola WHERE e specificare le condizioni multiple in una singola clausola che consente un filtraggio dei dati più controllato e granulare.



Elementi di base della clausola SQL WHERE

Cominciamo con le basi e apprendiamo i fondamenti del lavoro con la clausola WHERE in SQL.



Supponiamo di avere una tabella che contiene le informazioni sui paesi e recuperiamo solo i paesi con una popolazione (per km quadrato) maggiore di 100 e un'area maggiore di 2000000.





Possiamo eseguire una query come segue:

SELEZIONARE * FROM sample_db.country_information
zona DOVE > 2.000.000 AND popolazione_per_km_sq > 100 ;


Nell'esempio precedente, utilizziamo la clausola WHERE e l'operatore AND per specificare due condizioni. L'utilizzo dell'operatore AND indica a SQL che entrambe le condizioni DEVONO essere soddisfatte affinché il record sia incluso nel set di risultati.



Questo dovrebbe restituire solo i paesi che corrispondono ai criteri specificati come segue:


Diamo un'occhiata agli altri operatori per specificare le condizioni multiple in una clausola WHERE.

Operatore OR SQL

L'operatore OR ci consente di specificare le condizioni multiple in una clausola WHERE. Tuttavia, a differenza di un operatore AND che richiede che tutte le condizioni siano soddisfatte, l'operatore OR richiede che almeno una delle condizioni sia soddisfatta.

Ad esempio, per selezionare i paesi che hanno un'area maggiore di 2000000 o una popolazione (per km quadrato) maggiore di 100, possiamo eseguire la seguente query:

SELEZIONARE * FROM sample_db.country_information
zona DOVE > 2.000.000 O popolazione_per_km_sq > 100 ;


In questo caso, la query dovrebbe restituire i risultati come segue:

Operatore SQL IN

Possiamo anche utilizzare l'operatore IN per specificare i valori multipli per una colonna. Ad esempio, per selezionare i paesi il cui nome include le stringhe 'Stati Uniti' e 'Russia', possiamo eseguire la query come segue:

SELEZIONARE * FROM sample_db.country_information
DOVE paese IN ( 'Stati Uniti' , 'Russia' ) ;


Risultato:

Operatore SQL NOT

L'operatore NOT ci permette di negare una data condizione.

Ad esempio, seleziona i paesi che non hanno l'area specificata e popolare per kmq:

SELEZIONARE * FROM sample_db.country_information
Zona DOVE NON > 2.000.000 AND popolazione_per_km_sq > 100 ;


Risultato:

Operatori multipli SQL

Possiamo anche combinare più operatori per specificare condizioni più complesse.

SELEZIONARE * FROM sample_db.country_information
DOVE ( paese_informazioni.area > 2.000.000 AND popolazione_per_km_sq > 100 ) O paese = 'Cina' ;


Produzione:


In questo esempio, usiamo le parentesi per raggruppare le prime due condizioni in modo che vengano valutate come un'unica condizione prima di essere confrontate con la terza condizione.

Conclusione

Abbiamo imparato come utilizzare la clausola WHERE per specificare le condizioni multiple in SQL. Inoltre, abbiamo coperto gli operatori AND, OR, IN e NOT e scoperto come combinarli per creare condizioni più complesse.