Les clauses 'like'

Soyez le premier à donner votre avis sur cette source.

Snippet vu 8 038 fois - Téléchargée 34 fois

Contenu du snippet

Avec la clause like on utilise toujours un masque de recherche qui décrit la structure générale des valeurs recherchées.

Dans ce masque, on peut se servir du caractère "_" qui désigne un caractère quelconque.
Dans ce masque, on peut se servir du caractère "%" qui désigne toute suite de caractères.

Mais un problème se pose lorsque l'on veut rechercher un de ces deux caractères dans un champs de base de données.

Pour y remédier, il suffit de les préfixer dans le masque par un caractère spécial que l'on défini dans une clause escape. (Voir exemple)

Source / Exemple :


pour la table :

create table RUBRIQUE
(

NO numeric(5,0) not null, 
NOM char(30) not null, 
FORMULE char(30) not null 

)

On peut formaliser ces requêtes LIKE :

SELECT * FROM RUBRIQUE
WHERE NOM LIKE '%$_%' escape '$'

OU ENCORE

SELECT * FROM RUBRIQUE
WHERE FORMULE LIKE '%$%%' escape '$'

A voir également

Ajouter un commentaire Commentaires
Messages postés
216
Date d'inscription
dimanche 13 janvier 2002
Statut
Modérateur
Dernière intervention
7 novembre 2009

peux-tu donner quelques éléments ?
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
68
sur que devant une telle avalanche de détails, ta solution est en bonne voie !
Messages postés
4
Date d'inscription
dimanche 12 août 2007
Statut
Membre
Dernière intervention
11 août 2009

j'ai besoin de votre aide,j'ai saisi une requête qui m'envoie un bug.aidez moi.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.