|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Membre du Club
![]() Inscription : février 2006 Messages : 134 ![]() |
Bonjour.
Imaginons une table : table ( id , label ). Je souhaite selectionnertout les elements qui commencent par label(2). Pour des soucis de performance j'utilse une expression régulière: Code :
Il en va de meme pour les caracteres +,-,[,],(,),{,}... Une solution consiste trasnformer '( 'en '[(] ' et ')' en '[)]', la requéte devient : Code :
|
||||
|
|
00
|
|
|
#2 |
|
Nouveau Membre du Club
![]() Inscription : avril 2007 Messages : 28 ![]() |
sauf erreur de syntaxe, un truc du genre
Code :
SELECT * FROM TABLE WHERE label LIKE 'label(2)%'; |
|
|
00
|
|
|
#3 |
|
Membre émérite
![]() ![]() Inscription : mars 2002 Messages : 770 ![]() |
Le LIKE est effectivement le plus simple, je donne quand meme la version regex :
Code :
SELECT * FROM TABLE WHERE label ~* '^label\\(2\\)'; \\ pour l'echapement pas testé mais ca devrait etre bon |
|
|
00
|
|
|
#4 | ||||
|
Membre du Club
![]() Inscription : février 2006 Messages : 134 ![]() |
Merci pour les reponse
Code :
Code :
|
||||
|
|
00
|
|
|
#5 |
|
Membre du Club
![]() Inscription : février 2006 Messages : 134 ![]() |
Pouvez vous m'eclairer sur la sytaxe utiliser pour preceder les carateres :
+,-,[,],(,),{,}... de // |
|
|
00
|
|
|
#6 |
|
Membre émérite
![]() ![]() Inscription : mars 2002 Messages : 770 ![]() |
L'histoire de l'echappement est un probleme purrement historique, je t'invite a regarder dans la doc.
sinon pour ne plus avoir le message d'erreur, met E devant le quote : Code :
SELECT * FROM TABLE WHERE label ~* E'^label\\(2\\)'; |
|
|
00
|
|
|
#7 |
|
Membre du Club
![]() Inscription : février 2006 Messages : 134 ![]() |
Pouvez m'en dire plus sur les warning:
ne posent t ils pas des problemes de performance |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com