IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

Requète supprimer une chaine de caractères


Sujet :

Langage SQL

  1. #1
    Membre du Club Avatar de PhRey
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 197
    Points : 67
    Points
    67
    Par défaut Requète supprimer une chaine de caractères
    Bonjour à tous,
    j'ai une base sql, et je travail avec phpmyadmin.

    Je desire supprimer une chaine de caractères comprise entre des [] à l'interieur de mes champs.

    Par exemple dans un champs j'ai :
    "abcd1234[azerty]abc" et je souhaiterai "abcd1234[]abc"

    ou bien encore :
    "1aze[a/bc]456ABC" et je souhaiterai "1aze[]456ABC"

    Bref je souhaite supprimer tous les caracteres se trouvant entre les [] pour tous les enregistrements de mon champs contenant ces crochets... mais c'est difficile car la longueur gauche ou droite des [] varie, et les valeurs entre les [] varient egalement ! Le seul repère ce sont les [].

    Je trouve facilement les enregistrements concernés avec la requète :
    select * from matable where monchamps like '%[%]%'

    Mais je n'arrive pas a mettre à jour ces champs comme je le souhaite.
    Avez vous une petite idée svp ?
    Merci par avance !

  2. #2
    Membre du Club Avatar de PhRey
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 197
    Points : 67
    Points
    67
    Par défaut
    Faute de réponse je me réponds à moi même (ça peut en intéresser d'autres...)

    J'ai un peu avancé. En fait j'arrive à isoler les parties à droite, et à gauche de mes [] - il faut dire que j'ai remarqué que les caractères entre [] sont toujours au nombre de 10 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT SUBSTRING( monchamps
    FROM 1 
    FOR POSITION( '['
    IN monchamps) ) AS partie1, SUBSTRING( monchamps
    FROM POSITION( '['
    IN post_text ) +12) AS partie2
    FROM matable
    WHERE POSITION( '['
    IN post_text ) >0
    Par contre je ne sais pas trop quoi en faire maintenant afin de mettre à jour ma table ?
    J'ai essayé diverses requêtes mais je n'avance pas plus pour l'instant, donc si vous avez pitié (ça ne me gênera pas je vous jure)... n'hésitez pas !

  3. #3
    Futur Membre du Club
    Inscrit en
    Février 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    Moi, en essayant avec Oracle, ça donne ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    select CONCAT( 
                SUBSTR(monChamp,0,INSTR(monChamp,'['))
                ,SUBSTR(monChamp,INSTR(monChamp,']'))
                )
      from maTable;
    Je ne sais pas si ça peut t'aider (?)

    Pour mettre à jour tes champs, :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Update maTable set monChamp = CONCAT( SUBSTR(monChamp,0,INSTR(monChamp,'['))
           ,SUBSTR(monChamp,INSTR(monChamp,']')));
    ça marche en Oracle.

    Avec MySQL je ne sais pas...

    J'espère que ça aura pu t'aider !

Discussions similaires

  1. Comment supprimer une chaine de caractère
    Par solorac dans le forum Excel
    Réponses: 2
    Dernier message: 19/10/2010, 11h20
  2. Réponses: 1
    Dernier message: 12/05/2010, 19h52
  3. Supprimer une chaine de caractère
    Par SSDCoyote dans le forum Général Python
    Réponses: 1
    Dernier message: 20/11/2009, 13h53
  4. Supprimer une chaine de caractère
    Par islyoung2 dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 23/08/2009, 22h59
  5. Supprimer une chaine de caractéres
    Par gentelmand dans le forum Général Dotnet
    Réponses: 3
    Dernier message: 11/04/2009, 13h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo