PaliSkill
SQL débutant

Leçon 8 / 9 — Chapitre 3: WHERE : LIKE, IN, BETWEEN

LIKE et la sensibilité à la casse

Le comportement de LIKE face aux majuscules/minuscules dépend du moteur SQL : certains moteurs le rendent sensible à la casse par défaut, d'autres non — un point à vérifier dans la documentation du moteur utilisé plutôt que de le supposer.

SELECT nom FROM produits WHERE nom LIKE 'cahier';

Sur un moteur sensible à la casse, ce code ne trouve aucune ligne, car le nom réel est Cahier (avec un C majuscule) et non cahier. Sur un moteur insensible à la casse par défaut, la ligne serait trouvée malgré la différence de casse.

PostgreSQL propose l'opérateur ILIKE, une version explicitement insensible à la casse de LIKE, garantissant le même comportement quel que soit le paramétrage du moteur :

SELECT nom FROM produits WHERE nom ILIKE 'cahier';

Ce code trouve Cahier indépendamment de la casse utilisée dans le motif, sur un moteur qui supporte ILIKE.

Bonne pratique à retenir : ne jamais supposer le comportement de LIKE face à la casse sans l'avoir vérifié sur le moteur SQL réellement utilisé, et préférer un opérateur explicitement insensible à la casse (comme ILIKE) quand la casse ne doit clairement pas compter.

À retenir :

  • Le comportement de LIKE face à la casse dépend du moteur SQL : à vérifier, jamais à supposer.
  • ILIKE (PostgreSQL) offre un comportement explicitement insensible à la casse.

À vous de jouer : écrivez une requête ILIKE qui trouve Savon même en écrivant le motif tout en majuscules.

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que la certification finale.

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 84 leçons restantes de ce module

Votre paiement est vérifié avant l'activation de l'accès