Skip to content

WHERE – Filtrer les lignes

Bonne lecture et bon apprentissage !
Junior TSAFACK – 08/08/2026
⏱️ Temps de lecture estimé : 6 minutes


La commande WHERE dans une requête SQL permet d’extraire les lignes d’une base de données qui respectent une condition. Cela permet d’obtenir uniquement les informations désirées.


La commande WHERE s’utilise en complément à une requête utilisant SELECT. La façon la plus simple de l’utiliser est la suivante :

SELECT nom_colonnes FROM nom_table WHERE condition

Imaginons une base de données appelée « client » qui contient le nom des clients, le nombre de commandes qu’ils ont effectuées et leur ville :

id nom nbr_commande ville
1 Paul 3 paris
2 Maurice 0 rennes
3 Joséphine 1 toulouse
4 Gérard 7 paris

Pour obtenir seulement la liste des clients qui habitent à Paris, il faut effectuer la requête suivante :

SELECT * FROM client WHERE ville = 'paris'

Résultat :

id nom nbr_commande ville
1 Paul 3 paris
4 Gérard 7 paris

⚠️ Attention : Dans notre cas, tout est en minuscules donc il n’y a pas eu de problème. Cependant, si une table est sensible à la casse, il faut faire attention aux majuscules et minuscules.


Il existe plusieurs opérateurs de comparaison. Voici les plus couramment utilisés :

Opérateur Description
= Égal à
<> Pas égal à (ou != dans certains SGBD)
!= Pas égal à
> Supérieur à
< Inférieur à
>= Supérieur ou égal à
<= Inférieur ou égal à
IN Liste de plusieurs valeurs possibles
BETWEEN Valeur comprise dans un intervalle donné
LIKE Recherche en spécifiant le début, milieu ou fin d’un mot
IS NULL Valeur est nulle
IS NOT NULL Valeur n’est pas nulle

⚠️ Attention : Certains opérateurs n’existent pas dans les vieilles versions de systèmes de gestion de bases de données (SGBD). De plus, il existe de nouveaux opérateurs non indiqués ici qui sont disponibles avec certains SGBD. N’hésitez pas à consulter la documentation de MySQL, PostgreSQL ou autre pour voir ce qu’il vous est possible de faire.


Pour obtenir les clients qui ont effectué plus de 2 commandes :

SELECT * FROM client WHERE nbr_commande > 2

Résultat :

id nom nbr_commande ville
1 Paul 3 paris
4 Gérard 7 paris

Pour obtenir les clients qui n’habitent pas à Paris :

SELECT * FROM client WHERE ville <> 'paris'

Résultat :

id nom nbr_commande ville
2 Maurice 0 rennes
3 Joséphine 1 toulouse

Pour obtenir les clients qui habitent à Paris ou à Lyon (nous verrons cet opérateur en détail dans un chapitre dédié) :

SELECT * FROM client WHERE ville IN ('paris', 'lyon')

Résultat :

id nom nbr_commande ville
1 Paul 3 paris
4 Gérard 7 paris

Pour obtenir les clients qui ont effectué entre 1 et 5 commandes :

SELECT * FROM client WHERE nbr_commande BETWEEN 1 AND 5

Résultat :

id nom nbr_commande ville
1 Paul 3 paris
3 Joséphine 1 toulouse

Pour obtenir les clients dont le nom commence par « P » :

SELECT * FROM client WHERE nom LIKE 'P%'

Résultat :

id nom nbr_commande ville
1 Paul 3 paris

Bien que WHERE soit le plus souvent utilisé avec SELECT, elle peut également être utilisée avec d’autres commandes telles que UPDATE et DELETE. Nous verrons ces cas dans les chapitres dédiés à la manipulation des données.


  • Utilisez des guillemets simples pour les chaînes de caractères ('valeur').
  • Faites attention à la casse si votre SGBD est sensible à la casse (par défaut, MySQL ne l’est pas, mais PostgreSQL l’est).
  • Testez vos conditions avec des données connues avant de les utiliser en production.
  • Utilisez des parenthèses pour grouper des conditions complexes (nous verrons cela avec AND et OR).

Vous savez désormais comment filtrer les données avec WHERE. Mais que faire si vous avez besoin de combiner plusieurs conditions simultanément ?

👉 Chapitre 6 : AND & OR – Combiner des conditions

Bonne continuation !


Junior TSAFACK – 08/08/2026