Skip to content

2.4 — Filtrage multi-conditions

Ce que vous allez apprendre

  • Comment utiliser AND, OR et les parenthèses pour combiner les filtres
  • La comparaison avec les filtres avancés d'Excel

Combiner les conditions

Excel :
Utilisez le "Filtre personnalisé" pour n'afficher que les lignes où Produit = "Apples" et Montant > 100.

SQL :

sql
SELECT * FROM sales
WHERE Product = 'Apples' AND Amount > 100;
  • AND signifie que les deux conditions doivent être vraies.

Utiliser OR

Afficher les ventes de "Apples" ou "Oranges" :

sql
SELECT * FROM sales
WHERE Product = 'Apples' OR Product = 'Oranges';
  • OR signifie qu'une des conditions suffit.

Grouper avec des parenthèses

Afficher les ventes de "Apples" avec Montant > 100, ou toutes les ventes de "Oranges" :

sql
SELECT * FROM sales
WHERE (Product = 'Apples' AND Amount > 100)
   OR Product = 'Oranges';
  • Les parenthèses contrôlent l'ordre logique, comme dans les formules Excel.

Note spéciale sur les valeurs NULL

  • NULL signifie donnée manquante ou inconnue.

  • Les comparaisons comme = NULL ou <> NULL ne fonctionnent pas.

  • Utilisez IS NULL ou IS NOT NULL :

    sql
    WHERE Amount IS NULL

Erreurs courantes à éviter

  • Utiliser = ou <> avec NULL :

    sql
    WHERE Amount = NULL   -- Incorrect !
    WHERE Amount <> NULL  -- Incorrect !

    Utilisez toujours IS NULL ou IS NOT NULL pour tester NULL.

  • Oublier les parenthèses dans les conditions complexes :

    sql
    WHERE Product = 'Apples' AND Amount > 100 OR Product = 'Oranges'

    Cela peut ne pas filtrer comme prévu. Ajoutez des parenthèses :

    sql
    WHERE (Product = 'Apples' AND Amount > 100) OR Product = 'Oranges'
  • Oublier les guillemets autour des valeurs texte :

    sql
    WHERE Product = Apples   -- Incorrect !
    WHERE Product = 'Apples' -- Correct
  • Sensibilité à la casse :
    Certaines bases distinguent 'apples' et 'Apples'. Utilisez LOWER() pour ignorer la casse si besoin :

    sql
    WHERE LOWER(Product) = 'apples'

Points clés

  • Combinez les conditions avec AND, OR et des parenthèses pour un filtrage avancé.
  • Utilisez toujours IS NULL pour tester les données manquantes.

Prochaine étape

Dans le prochain module, vous apprendrez à transformer et trier vos données—comme avec les formules et le tri dans Excel.