Clause WHERE SQL sur plusieurs conditions

Clause Where Sql Sur Plusieurs Conditions



Les bases de données sont un élément important des applications modernes. Cependant, les bases de données stockent une énorme quantité de données. Par conséquent, nous avons besoin de moyens pour filtrer les données et récupérer uniquement les enregistrements nécessaires.

L'une des méthodes de filtrage de données les plus courantes de SQL utilise la clause WHERE. La clause WHERE dans SQL nous permet de filtrer les enregistrements en fonction d'une condition donnée. Cette clause peut spécifier une ou plusieurs conditions qui nous permettent de filtrer les enregistrements renvoyés par une instruction SELECT.







Ce didacticiel explique comment utiliser la clause WHERE et spécifier les multiples conditions dans une seule clause, ce qui permet un filtrage des données plus contrôlé et plus granulaire.



Principes de base de la clause WHERE SQL

Commençons par les bases et apprenons les bases de l'utilisation de la clause WHERE dans SQL.



Supposons que nous ayons une table qui contient les informations sur les pays et que nous récupérons uniquement les pays dont la population (par km carré) est supérieure à 100 et la superficie supérieure à 2 000 000.





Nous pouvons exécuter une requête comme suit :

SÉLECTIONNER * FROM sample_db.informations_pays
OÙ zone > 2 000 000 ET population_per_km_sq > 100 ;


Dans l'exemple précédent, nous utilisons la clause WHERE et l'opérateur AND pour spécifier deux conditions. L'utilisation de l'opérateur AND indique à SQL que les deux conditions DOIVENT être remplies pour que l'enregistrement soit inclus dans le jeu de résultats.



Cela ne devrait renvoyer que les pays qui correspondent aux critères spécifiés comme suit :


Regardons les autres opérateurs pour spécifier les conditions multiples dans une clause WHERE.

Opérateur SQL OU

L'opérateur OR nous permet de spécifier les multiples conditions dans une clause WHERE. Pourtant, contrairement à un opérateur ET qui nécessite que toutes les conditions soient remplies, l'opérateur OU nécessite qu'au moins une des conditions soit remplie.

Par exemple, pour sélectionner les pays qui ont une superficie supérieure à 2 000 000 ou une population (par km carré) supérieure à 100, nous pouvons exécuter la requête suivante :

SÉLECTIONNER * FROM sample_db.informations_pays
OÙ zone > 2 000 000 OU population_per_km_sq > 100 ;


Dans ce cas, la requête doit renvoyer les résultats comme suit :

Opérateur SQL IN

Nous pouvons également utiliser l'opérateur IN pour spécifier les valeurs multiples d'une colonne. Par exemple, pour sélectionner les pays dont le nom comprend les chaînes « États-Unis » et « Russie », nous pouvons exécuter la requête comme suit :

SÉLECTIONNER * FROM sample_db.informations_pays
OÙ pays DANS ( 'États-Unis' , 'Russie' ) ;


Résultat:

Opérateur SQL NON

L'opérateur NOT nous permet de nier une condition donnée.

Par exemple, sélectionnez les pays qui n'ont pas la superficie spécifiée et la popularité par km² :

SÉLECTIONNER * FROM sample_db.informations_pays
OÙ NON > 2 000 000 ET population_per_km_sq > 100 ;


Résultat:

Opérateurs multiples SQL

Nous pouvons également combiner les multiples opérateurs pour spécifier des conditions plus complexes.

SÉLECTIONNER * FROM sample_db.informations_pays
( country_information.area > 2 000 000 ET population_per_km_sq > 100 ) OU pays = 'Chine' ;


Sortir:


Dans cet exemple, nous utilisons les parenthèses pour regrouper les deux premières conditions afin qu'elles soient évaluées comme une seule condition avant d'être comparées à la troisième condition.

Conclusion

Nous avons appris à utiliser la clause WHERE pour spécifier les multiples conditions en SQL. De plus, nous avons couvert les opérateurs AND, OR, IN et NOT et découvert comment les combiner pour créer des conditions plus complexes.