Cours SQL et MySQL · Module 3: Filtrer (WHERE)

Recherche de motifs : LIKE

2 min de lecture
Dans cette leçon3

Parfois, nous ne connaissons pas la valeur exacte - nous nous souvenons seulement qu'un titre commence par la lettre O, ou qu'un nom de famille contient la syllabe « kow ». Pour ce genre de recherche approximative, nous utilisons l'opérateur LIKE avec des caractères jokers.

Le signe pourcentage %

Le joker le plus important est le pourcentage %, qui remplace n'importe quelle suite de caractères (y compris vide) :

1SELECT * FROM ksiazki
2WHERE tytul LIKE 'O%';

Cela signifie : « Des titres commençant par O » - après la lettre O, il peut y avoir n'importe quoi (par ex. Odyssée, Old scroll).

Trois motifs courants

  • 'O%' - commence par O (pourcentage à la fin),
  • '%a' - se termine par la lettre a (pourcentage au début),
  • '%war%' - contient le mot « war » n'importe où au milieu (pourcentage des deux côtés).
1SELECT * FROM ksiazki
2WHERE tytul LIKE '%war%';

Cette requête trouvera tout titre dans lequel le mot « war » apparaît - au début, au milieu ou à la fin.

N'oublie pas les guillemets

Un motif dans LIKE est du texte, nous l'entourons donc toujours de guillemets simples :

1SELECT * FROM czytelnicy
2WHERE nazwisko LIKE 'Kow%';

Cela trouvera tous les lecteurs dont le nom de famille commence par « Kow » - par exemple Kowalski ou Kowalczyk. LIKE est l'œil du scribe capable de reconnaître un parchemin rien qu'à un fragment de son titre !

Tu as repéré une erreur dans cette leçon ?

Teste tes connaissances

Réponds aux questions de cette leçon. Choisis une réponse pour voir tout de suite si elle est correcte.

  1. 1. Que va reconnaître la condition : WHERE tytul LIKE 'A%' ?

  2. 2. Que va reconnaître la condition : WHERE tytul LIKE '%war%' ?

Tâches pratiques dans le jeu

  • Éditeur de code

    Écris une requête qui récupère toutes les colonnes de la table ksiazki pour les livres dont le tytul commence par la lettre O. Utilise l'opérateur LIKE.

  • Clique dans l'ordre

    Clique sur les éléments dans l'ordre où l'on construit une requête recherchant les titres commençant par la lettre O :

  • Éditeur de code

    Écris une requête qui récupère toutes les colonnes de la table czytelnicy pour les lecteurs dont le nazwisko commence par 'Kow'. Utilise l'opérateur LIKE.