Requête mysql à corriger - Help me please

Fermé
magalonia Messages postés 55 Date d'inscription mercredi 27 décembre 2000 Statut Membre Dernière intervention 18 juin 2014 - Modifié par magalonia le 18/06/2014 à 10:02
Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 - 18 juin 2014 à 18:58
Bonjour à tout le monde,

Je sollicite votre aide pour corriger une requête mysql que j'aimerais appliquer dans mon phpmyadmin.

C'est une base mysql qui passe par une installation WAMP : Mysql 5.5.24 - php 5.3.13 - apache 2.2.22

Pouvez-vous corriger ma requête sql pour que les **** correspondent à n'importe quel caractère situé entre "> et </a>a/p>
En effet, les ***** correspondent dans le champ à une expression chaque fois différente et de longueur différente, ce qui fait que je voudrais pouvoir avoir une requête qui me remplace tout ce qui se trouve entre x et y par l'expression suivante qui sera alors commune à tout...

Ma requête : UPDATE collections_state SET state_collections = replace(state_collections, '">**********</a></p>', '">ANNÉE ÉCOULÉE</a></p>');

J'ai tenté d'appliquer une série de paramètres d'expressions régulière, mais je dois me gourrer quelque part, car cela ne fonctionne pas :(

D'avance merci, je suis une bille en mysql, mais j'apprends très vite :-)

Cordialement,
Mag'

1 réponse

Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 126
18 juin 2014 à 18:58
Bonjour,
Les Regex en Sql, ça deviens assez vite compliqué.
Si tu connais un petit peu le PHP, le plus simple est de faire un select sur toutes ces lignes et de faire un preg_replace dessus, puis de refaire l'update.
0