LIKE SQL : Comment utiliser cette fonction de recherche ?

-
3
 m de lecture
-

Afin de communiquer avec les bases de données, les développeurs et experts data peuvent utiliser le langage SQL. Grâce à différentes requêtes, vous pouvez sélectionner certaines informations, mettre à jour un tableau, ajouter des données, en supprimer, etc. Parmi les commandes à connaître, il y a la requête LIKE SQL.

Mais à quoi sert-elle ? Comment l’utiliser ? Découvrez les réponses avec quelques exemples d’applications concrètes.

Définition de LIKE SQL

L’opérateur LIKE est l’une des commandes incontournables du langage informatique SQL. L’objectif est de rechercher des données spécifiques au sein d’un tableau. Pour cela, LIKE SQL utilise des modèles qui permettent de définir précisément ce dont vous avez besoin. Par exemple, si vous souhaitez sélectionner des clients dont le nom commence par « de » ou termine par « in », etc.

Comment utiliser LIKE SQL ?

Pour utiliser la requête LIKE SQL, la syntaxe la plus courante est la suivante :

SELECT *
FROM table
WHERE colonne LIKE modele

Grâce à cette commande, vous allez pouvoir sélectionner des données au sein d’un tableau, dans une colonne selon le modèle défini par LIKE SQL. Mais alors quel est ce modèle de recherche ?

Il est défini par des caractères joker. Ces derniers se substituent aux autres caractères de votre chaîne de caractère. Il en existe deux principaux. À savoir :

  • % : il représente tous les autres caractères.
  • _ : il représente un seul caractère.

À partir de là, voici les différentes combinaisons possibles :

  • LIKE ‘%a’ : il vous permet de rechercher toutes les chaînes de caractères qui se terminent par un « a ».
  • LIKE ‘a%’ : à l’inverse, vous pouvez rechercher toutes les chaînes de caractère qui commencent par un « a ».
  • LIKE ‘%a%’ : cela concerne tous les enregistrements qui utilisent le caractère « a ». Dans ce cadre, le % peut n’indiquer qu’un seul, plusieurs ou même aucun caractère antérieur ou postérieur au « a ».
  • LIKE ‘a%ion’ : ce modèle permet de rechercher les chaînes de caractère qui commencent par « a » et qui se terminent par « ion », comme « avion » ou « attention ».
  • LIKE ‘a__’ : il s’agit de rechercher toutes les chaînes de caractères commençant par « a ». Mais dont le nombre total de caractères est limité à 3.
  • LIKE ‘_a%’ : la combinaison de ces deux jokers nous indique que le nombre de caractères total n’importe pas. En revanche, le « a » doit impérativement être placé en seconde position.

Pour vous aider à mieux comprendre l’utilisation de LIKE SQL et de ses différents modèles de recherche, nous vous proposons plusieurs exemples concrets.

5 exemples d’utilisation de la requête SQL LIKE

Pour ces différents exemples, nous allons utiliser le tableau « Client » ci-dessous :

Nom Prénom Code postal Numéro de téléphone Email
Martin Annie 75112 06.40.45.36.61 annie.m@gmail.com
Durand Fabien 17042 07.58.36.21.63 fabien.durand@laposte.net
Dupont Thomas 17015 06.23.98.51.45 dupont17@gmail.com
Berger Justine 77485 06.15.29.85.61 jusber@orange.fr
Bernard Valentin 63950 07.59.65.19.95 beber@sfr.fr

LIKE ‘a%’

Pour cette commande LIKE SQL, nous recherchons tous les clients vivant dans le département Charente-Maritime (17). Voici la syntaxe de la requête :

SELECT *
FROM Client
WHERE Code postal LIKE 77%

Et voici le résultat :

Nom Prénom Code postal Numéro de téléphone Email
Durand Fabien 17042 07.58.36.21.63 fabien.durand@laposte.net
Dupont Thomas 17015 06.23.98.51.45 dupont17@gmail.com

LIKE ‘a%’

L’objectif de cette requête LIKE SQL est de rechercher tous les clients ayant une adresse Gmail. Vous aurez besoin de cette syntaxe :

SELECT *
FROM Client
WHERE email LIKE %gmail.com

Et voici le résultat :

Nom Prénom Code postal Numéro de téléphone Email
Martin Annie 75112 06.40.45.36.61 annie.m@gmail.com
Dupont Thomas 17015 06.23.98.51.45 dupont17@gmail.com

LIKE ‘%a%’

Ici, nous recherchons tous les clients dont le prénom contient un « i ». La syntaxe est la suivante :

SELECT *
FROM Client
WHERE prénom LIKE %i%

Et voici le résultat :

Nom Prénom Code postal Numéro de téléphone Email
Martin Annie 75112 06.40.45.36.61 annie.m@gmail.com
Durand Fabien 17042 07.58.36.21.63 fabien.durand@laposte.net
Berger Justine 77485 06.15.29.85.61 jusber@orange.fr
Bernard Valentin 63950 07.59.65.19.95 beber@sfr.fr

LIKE ‘_a%’

Pour cette requête LIKE SQL, nous recherchons tous les clients dont la deuxième lettre du prénom est un « ai ». Voici la syntaxe à utiliser :

SELECT *
FROM Client
WHERE prénom LIKE %_a%

Et voici le résultat :

Nom Prénom Code postal Numéro de téléphone Email
Durand Fabien 17042 07.58.36.21.63 fabien.durand@laposte.net
Bernard Valentin 63950 07.59.65.19.95 beber@sfr.fr

LIKE ‘a%ion’

Pour ce dernier exemple de LIKE SQL, nous recherchons tous les clients dont le numéro de téléphone comment par 06 et termine par 61. La syntaxe est la suivante :

SELECT *
FROM Client
WHERE numéro de téléphone LIKE 06%61

Et voici le résultat :

Nom Prénom Code postal Numéro de téléphone Email
Martin Annie 75112 06.40.45.36.61 annie.m@gmail.com
Berger Justine 77485 06.15.29.85.61 jusber@orange.fr

Maîtrisez le langage SQL avec DataScientest

Au-delà de la requête LIKE SQL, il existe une multitude de requêtes à connaître pour manipuler efficacement les bases de données relationnelles. Si vous souhaitez en savoir plus, n’hésitez pas à rejoindre nos formations data.

Facebook
Twitter
LinkedIn

DataScientest News

Inscrivez-vous à notre Newsletter pour recevoir nos guides, tutoriels, et les dernières actualités data directement dans votre boîte mail.

Vous souhaitez être alerté des nouveaux contenus en data science et intelligence artificielle ?

Laissez-nous votre e-mail, pour que nous puissions vous envoyer vos nouveaux articles au moment de leur publication !

Newsletter icone
icon newsletter

DataNews

Vous souhaitez recevoir notre
newsletter Data hebdomadaire ?