Vous êtes sur la page 1sur 2

AA

/ Académie / Cours MySQL / Commandes SQL AND et OR

 Sommaire

Temps de lecture approximative : 8 minutes

COMMANDES SQL AND ET OR


Nous l'avons vu dans le chapitre précédent consacré à la commande WHERE , il est possible de filtrer les résultats d'une requête en
fonction d'une condition. Les opérateurs logiques AND et OR peuvent être utilisés en complément de la commande WHERE pour
combiner des conditions. L’utilisation la plus basique de cette commande s’effectue de la manière suivante :

SQL

SELECT une_colonne FROM une_table WHERE une_condition AND une_autre_condition;

SQL

SELECT une_colonne FROM une_table WHERE une_condition OR encore_condition;

Afin de mettre en évidence l'utilisation des commandes AND et OR , et de comprendre rapidement comment ces dernières fonctionnent,
nous utiliserons la table clients qui contient les colonnes et données suivantes pour nos différents exemples. Cette dernière simule la
table qui contient les clients d'une entreprise quelconque.

id prenom nom email ville commandes

1 Marine Leroy mleroy@example.com Paris 3

2 Jean René jrene@example.com Lyon 1

3 Ted Bundy tbundy@example.com Lyon 2

4 Paul Bismuth pbismuth@example.com Paris NULL

5 Caroline Rodriguez crodriguez@example.com Berlin 2

Table : clients

OPÉRATEUR LOGIQUE AND


En SQL, l'opérateur logique AND permet de conditionner l'affichage d'une requête en fonction de plusieurs conditions. Il s'utilise
comme un ET. L'opérateur logique AND ne peut être utilisé sans la commande WHERE . Sans plus attendre, un exemple concret. Nous
souhaitons rechercher dans la table, les clients qui ont commandé et qui sont dans la ville de Paris.

SQL

SELECT * FROM clients WHERE ville = 'Paris' AND commandes IS NOT NULL;

Résultat

id prenom nom email ville commandes

1 Marine Leroy mleroy@example.com Paris 3

On peut utiliser autant d'opérateurs logiques AND que l'on souhaite. On peut donc effectuer également ce genre de requête.

SQL
SELECT * FROM clients WHERE ville = 'Lyon' AND commandes >= 1;

Résultat

id prenom nom email ville commandes

2 Jean René jrene@example.com Lyon 1

3 Ted Bundy tbundy@example.com Lyon 2

OPÉRATEUR LOGIQUE OR
En SQL, l'opérateur logique OR permet de conditionner l'affichage d'une requête en fonction de plusieurs conditions. Il s'utilise comme
un OU. L'opérateur logique OR ne peut être utilisé sans la commande WHERE . Sans plus attendre, un exemple concret. Nous souhaitons
rechercher dans la table, les clients qui n'ont pas commandé ou qui habitent dans la ville de Berlin.

SQL

SELECT * FROM clients WHERE ville = 'Berlin' OR commandes IS NULL;

Résultat

id prenom nom email ville commandes

4 Paul Bismuth pbismuth@example.com Paris NULL

5 Caroline Rodriguez crodriguez@example.com Berlin 2

Tout comme l'opérateur AND , on peut utiliser autant d'opérateurs logiques OR que l'on souhaite, il n'y a pas de restrictions.

COMBINER AND ET OR
En SQL, il est tout à fait enviseagable de construire des requêtes complexes qui combinent les opérateurs logiques AND et OR . En
reprenant la table clients, imaginons que l'on souhaite obtenir les clients de Paris qui ont commandé, et les clients de Lyon qui ont
commandé plus d'une fois.

SQL

SELECT * FROM clients WHERE (ville = 'Lyon' AND commandes > 1) OR (ville = 'Paris' AND commandes IS NOT NULL);

Résultat

id prenom nom email ville commandes

1 Marine Leroy mleroy@example.com Paris 3

3 Ted Bundy tbundy@example.com Lyon 2

L'utilisation des parenthèses peut se montrer très pertinente. Elles améliorent la lisibilité et la compréhension des requêtes, et par
conséquent réduisent les erreurs.

Chapitre précédent Chapitre suivant

Vous aimerez peut-être aussi