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

Requêtes MySQL Discussion :

UPDATE et concaténation


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Par défaut UPDATE et concaténation
    Bonjour à tous,

    Je souhaite modifier le nom (varchar) de chaque enregistrement.
    Apparemment la requête suivante ne fonctionne pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE `t_test` SET t_test.nom = "prefixe" + t_test.nom
    car tous les noms deviennent "0"

    Quelle est la bonne syntaxe SVP ?
    Merci

  2. #2
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 061
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 061
    Par défaut
    Bonjour,

    Sous MySQL, la concaténation se fait avec la fonction CONCAT(chaine1, chaine2,...)

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  3. #3
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Par défaut
    parfait ! merci cedric.
    aussi, j'aurais une autre question en rapport avec CONCAT

    Comment concaténer 2 champs provenant chacun d'une table différente ?

    ex :
    t_groupe (id, nom)
    t_etablissement (id, nom, id_groupe)
    Un établissement appartient a 0 ou 1 groupe.

    J'aimerais concaténer les 2 noms, faire un truc de ce genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE `t_etablissement` SET nom = CONCAT(t_groupe.nom, " - ", t_etablissement.nom);
    Encore un p'tit coup de pouce SVP...

  4. #4
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Par défaut
    salut,

    essaie quelque chose dans ce genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE t_etablissement 
    JOIN t_groupe on t_etablissement.id = t_groupe.id
    SET t_etablissement.nom = CONCAT(t_groupe.nom, " - ", t_etablissement.nom);

  5. #5
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Par défaut
    Un GRAND merci à vous 2 !

    une p'tite erreur s'était glissée avec la clé étrangère...
    UPDATE t_etablissement
    JOIN t_groupe ON t_etablissement.id_groupe = t_groupe.id
    SET t_etablissement.nom = CONCAT(t_groupe.nom, " - ", t_etablissement.nom);
    @+

  6. #6
    Membre Expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Par défaut
    Curieux de faire ça, le modèle initial, en formes normales, me semble plus judicieux.
    Pourquoi redonder cette information dans deux colonnes de la table ?
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Update avec concaténation
    Par amnay dans le forum Débuter
    Réponses: 3
    Dernier message: 24/08/2012, 11h41
  2. UPDATE et concaténation en sqlite
    Par _FaFa_ dans le forum Langage SQL
    Réponses: 1
    Dernier message: 14/10/2010, 21h20
  3. Update et concaténation
    Par bkina dans le forum SQL
    Réponses: 1
    Dernier message: 06/05/2008, 13h32
  4. Update avec concaténation de champs
    Par hari37 dans le forum Requêtes
    Réponses: 2
    Dernier message: 18/02/2007, 20h45
  5. problème d'update avec concaténation
    Par Invité dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 29/11/2005, 16h55

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