Supprimer le dernier et premier caractére des champs d'une colon

Fermé
chatvertdusud Messages postés 71 Date d'inscription mardi 7 avril 2015 Statut Membre Dernière intervention 14 septembre 2016 - 17 juin 2015 à 15:21
chatvertdusud Messages postés 71 Date d'inscription mardi 7 avril 2015 Statut Membre Dernière intervention 14 septembre 2016 - 18 juin 2015 à 16:14
Bonjour,

Je souhaite supprimer le dernier et le premier caractère des champs d'une colonne si ce caractère est un - (un tiret)

J'ai essayé ça mais ça supprime le dernier caractère sans distinction, comment faire ?

UPDATE table
SET nom_colonne = SUBSTR(nom_colonne, 1, CHAR_LENGTH(nom_colonne) - 1)
WHERE condition


Je sèche ... help
A voir également:

4 réponses

jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
17 juin 2015 à 17:40
Bonjour,
Tu peux utiliser un IF .. ou un CASE

https://stackoverflow.com/questions/15001217/update-mysql-with-if-condition

ça doit donner un truc du genre :
UPDATE table
SET nom_colonne = IF(SUBSTRING(nom_colonne, -1) = '-' , SUBSTR(nom_colonne, 1, CHAR_LENGTH(nom_colonne) - 1)  , nom_colonne)
WHERE condition 


0
chatvertdusud Messages postés 71 Date d'inscription mardi 7 avril 2015 Statut Membre Dernière intervention 14 septembre 2016
17 juin 2015 à 19:03
Merci jordane45, je vais essayer ça, encore merci pour ton aide.
0
chatvertdusud Messages postés 71 Date d'inscription mardi 7 avril 2015 Statut Membre Dernière intervention 14 septembre 2016
17 juin 2015 à 19:24
ça fonctionne très bien pour le dernier - (tiret)
je supposai que pour le premier je pouvais faire cela
UPDATE wp_posts SET post_name = IF(SUBSTRING(post_name, 1) = '-' , SUBSTR(post_name, 1, CHAR_LENGTH(post_name) 1) , post_name)

mais je ne suis pas très à l'aise avec ce langage ! ça ne marche pas !
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
17 juin 2015 à 19:28
Avec LEFT peut être
UPDATE wp_posts 
SET post_name = IF(LEFT(post_name, 1) = '-' , SUBSTR(post_name, 2, CHAR_LENGTH(post_name)) , post_name) 


0
chatvertdusud Messages postés 71 Date d'inscription mardi 7 avril 2015 Statut Membre Dernière intervention 14 septembre 2016
17 juin 2015 à 19:46
a non... toujours le premier mais pas le dernier . ;-(
0
chatvertdusud Messages postés 71 Date d'inscription mardi 7 avril 2015 Statut Membre Dernière intervention 14 septembre 2016
17 juin 2015 à 19:57
j'essaie des formules avec https://sql.sh/764-exclure-caractere-colonne mais...
0
chatvertdusud Messages postés 71 Date d'inscription mardi 7 avril 2015 Statut Membre Dernière intervention 14 septembre 2016
18 juin 2015 à 13:38
up
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
18 juin 2015 à 14:00
Je viens de relire une de tes réponses:

a non... toujours le premier mais pas le dernier . ;-(


.... tu as bien compris que je faisais DEUX requêtes différentes... hein ??



Cordialement,
Jordane
0
chatvertdusud Messages postés 71 Date d'inscription mardi 7 avril 2015 Statut Membre Dernière intervention 14 septembre 2016
18 juin 2015 à 16:14
Merci Jordan, t'as raison ... j'ai complétement déconné là !!
et dire que j'ai passé une partie de la nuit dessus ...

Merci beaucoup
0