SQL prise en compte du Underscore
Résolu
Christr
Messages postés
350
Statut
Membre
-
testfield -
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
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
Configuration: Change en permanence
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 -
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
\\_ -
-
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