|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : décembre 2007 Messages : 57 ![]() |
Bonjour,
J'aimerais modifier toutes les valeurs numériques dans un champ texte. Le champ est un texte contenant de temps en temps des <b>#00564</b>. Pour ces types de numéro #00564, j'aimerais qu'il soit tous additionné de 10 000? Exemple : "Il était une fois le numéro #00564 bla bla." Il faudrait que tous les nombres de type #00564 soit additionnés de 10 000. #00564 deviendrait #10564. Ce champ se nomme "Description" et est présent dans la table "voiture". Cordialement, |
|
|
00
|
|
|
#2 | |
![]() ![]() |
Citation:
Il faut localiser la position (POSITION) du caractère # puis convertir (CAST) le morceau composé des 5 caractères suivant cette position en UNSIGNED, lui ajouter 10000, reconvertir en chaîne de caractère et remplacer (REPLACE) la chaîne existante. Essaie tout seul en commençant hors de la table avec un exemple. Je te donne le début : Code :
SELECT POSITION('#' IN 'Il était une fois le numéro #00564 bla bla.') Puis tu complètes progressivement la requête en vérifiant le résultat à chaque fois : Code :
SELECT SUBSTRING('Il était une fois le numéro #00564 bla bla.' FROM POSITION('#' IN 'Il était une fois le numéro #00564 bla bla.') + 1 FOR 5) Bon courage !
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com