WHERE conserve les lignes qui respectent une condition
Sans filtre, la requête retourne toutes les lignes. WHERE s’écrit après FROM et compare une colonne à une valeur.
Les textes sont entourés d’apostrophes. Les nombres restent sans apostrophes lorsqu’ils sont stockés comme nombres.
=égal<>différent>et<comparaisons strictes>=et<=incluent la valeur limite
SELECT produit, prix
FROM produits
WHERE prix < 50;Combiner avec AND, OR et NOT
AND exige que les deux conditions soient vraies. OR accepte qu’une seule condition soit vraie. Des parenthèses rendent la priorité explicite.
NOT inverse un test. Il doit être utilisé avec une formulation qui reste facile à relire.
SELECT produit, categorie, prix
FROM produits
WHERE categorie = 'Informatique'
AND prix <= 100;ORDER BY organise le résultat
ORDER BY intervient après le filtre. ASC trie en ordre croissant et constitue généralement la valeur par défaut. DESC applique l’ordre décroissant.
Plusieurs colonnes peuvent être indiquées. La deuxième départage les lignes identiques selon la première.
SELECT produit, prix
FROM produits
WHERE prix >= 10
ORDER BY prix DESC, produit ASC;Attention aux valeurs NULL
NULL signifie absence de valeur connue. Il ne se compare pas avec = NULL.
Utilisez IS NULL pour trouver les valeurs absentes et IS NOT NULL pour les valeurs renseignées.
SELECT nom
FROM clients
WHERE ville IS NULL;Vérifiez votre compréhension
Affichez les produits dont le prix est au moins 40 DT, du moins cher au plus cher.
SELECT produit, prix
FROM produits
WHERE -- condition
ORDER BY -- tri;