SQL prise en compte du Underscore [Résolu/Fermé]

Signaler
Messages postés
320
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
19 janvier 2011
-
 testfield -
Bonjour,

J'ai une requete dans un formulaire php du type

Select *
From `atrium`
Where `idclient` LIKE 'FR%$code';

elle fonctionne très bien cependant j'aimerais rajouter que entre le FR% et le $code il y est un underscore ( _ )

ma requete future
Select *
From `atrium`
Where `idclient` LIKE 'FR%_$code';


Mon souci est qu'il ne prent pas en compte le underscore

Quel qu'un peut il m'aidé s'il vous plait merci

4 réponses

select * from NomTable f where f.field like 'E\_%' escape '\' ;

L'utilisation du mot clef escape permet de definir un caractere d'echappement
5
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 76687 internautes nous ont dit merci ce mois-ci

Messages postés
320
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
19 janvier 2011
47
C'est le \\ pour accepté une valeur déja utilisé exemple vous recherche une chaine de caractère qui comprend un pourcentage ou un underscore il faus metre devant le \\

\\%

ou

\\_
Messages postés
320
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
19 janvier 2011
47
s'il vous plait help me
Messages postés
1263
Date d'inscription
mercredi 26 septembre 2007
Statut
Membre
Dernière intervention
29 juillet 2010
1 318
Bonjour,

En fait, le caractère "_" est utilisé dans un LIKE comme indiquant que l'on accepte n'importe quel caractère à la place du "_".
Exemple: SELECT * FROM NomTable WHERE NomColonne LIKE 'A_Z'
Cela permet de sélectionner tous les enregistrement où NomColonne commence par A , est suivi de n'importe quel caractère et ensuite Z , dont si NomColonne = 'AHZ', il sera sélectionné, par contre si NomColonne = 'AHHZ' il ne sera pas sélectionné.
Je pense que tu dois utiliser ta première requête et vérifier par du code PHP que ton idclient contient le caractère "_".
A plus