[MySQL] WHERE avec sous-chaîne

WHERE avec sous-chaîne [MySQL] - SQL/NoSQL - Programmation

Marsh Posté le 15-06-2005 à 16:30:55    

Salut
 
j'ai une base, disons :
 
base
__________
id  | 10a45
nom | jean
 
ma requête :
 
SELECT nom FROM base WHERE id ? 10a45_g
 
voila je voudrai savoir quoi mettre à la place du ? pour que la requête retourne "jean". L'idée derrière tout çà est que "10a45" est une sous-chaîne de "10a45_g".
 
J'ai essayé  
SELECT nom FROM base WHERE INSTR(10a45_g, id) mais sans succès

Reply

Marsh Posté le 15-06-2005 à 16:30:55   

Reply

Marsh Posté le 15-06-2005 à 16:53:58    

SELECT nom FROM base WHERE INSTR('10a45_g', id)

Reply

Marsh Posté le 19-08-2005 à 17:14:43    

et lorsque'on veut avoir par exemple tous les enregistrements dont les 3e et 4e caracteres sont '06'
 
par exemple j'ai 3 enregistrements :
080600
070600
080506
 
et je veux faire une requete mysql qui sort les 2 premiers car ils sont du type xx06xx.
Merci !!!!

Reply

Marsh Posté le 19-08-2005 à 17:31:48    

http://dev.mysql.com/doc/mysql/fr/ [...] tions.html
 
INSTR() renvoie la position de la première occurrence de la sous-chaîne. Donc WHERE INSTR(champ, '06') = 2 devrait marcher.
 
edit: sinon tu peux utiliser WHERE SUBSTRING(champ, 3, 2) = '06'.


Message édité par Beegee le 19-08-2005 à 17:33:44
Reply

Marsh Posté le 19-08-2005 à 17:49:06    

Genial !
Ca marche au poils !!!!!
trop merci Beegee !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed