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 :

update, concat et jointures


Sujet :

Langage SQL

  1. #1
    Mr6
    Mr6 est déconnecté
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Septembre 2004
    Messages
    607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2004
    Messages : 607
    Points : 794
    Points
    794
    Par défaut update, concat et jointures
    Bonjour,

    J'ai besoin de passer la requête suivante sur un wordpress pour mettre à jour des titres et des name :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    update p 
    	set 
    		p.post_title = concat(p.post_title, '(' + im.code_postal + ')'), 
    		p.post_name = concat(p.post_name, '-' + im.code_postal) 
    	FROM wp_posts as p 
    	inner join wp_postmeta as pm 
    		on p.ID = pm.post_id 
    	inner join wp_infos_mairies as im 
    		on substring(pm.meta_value, 68,5) = im.code_insee 
    	where 
    		p.post_type = 'ait-item' 
    		and 
    		pm.meta_key = '_ait-item_item-extension' 
    		and 
    		p.post_name not like "%im.code_postal" 
    limit 1;
    J'ai une erreur (certainement autour du from) mais je sèche depuis un moment, donc je ne serais pas contre un oeil extérieur pour pointer ma bêtise
    merci !

  2. #2
    Mr6
    Mr6 est déconnecté
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Septembre 2004
    Messages
    607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2004
    Messages : 607
    Points : 794
    Points
    794
    Par défaut
    C'est bon je crois que j'ai trouvé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    update wp_posts as p, wp_postmeta as pm, wp_infos_mairies as im   
    	set 
    		p.post_title = concat(p.post_title, '(' + im.code_postal + ')'), 
    		p.post_name = concat(p.post_name, '-' + im.code_postal)   
    	where 
    		p.ID = pm.post_id 
    		and
    		substring(pm.meta_value, 68,5) = im.code_insee
    		and		
    		p.post_type = 'ait-item' 
    		and 
    		pm.meta_key = '_ait-item_item-extension' 
    		and 
    		p.post_name not like "%im.code_postal";
    Pas le droit au limit en update multi-tables visiblement, et il semble falloir appeler toutes les tables de la requete dès le départ avec mysql...
    merci moi pour cette explication ! :p

  3. #3
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 136
    Points : 38 561
    Points
    38 561
    Billets dans le blog
    9
    Par défaut
    Bonjour,

    Si votre requête fonctionne, tant mieux, par contre, vos mises à jour ne respectent pas l'un des principes fondamentaux d'une base de données, principe selon lequel une donnée doit être atomique.
    Pourquoi stocker deux informations dans une colonne, et qui plus est, en y ajoutant de la mise en forme - vos parenthèses et le tiret - la mise en forme est du ressort de la couche présentation !

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

Discussions similaires

  1. update simple avec jointure
    Par funboard dans le forum Oracle
    Réponses: 2
    Dernier message: 20/12/2008, 14h14
  2. Update Sum et Jointure, impossible ?
    Par UVB_PC dans le forum Langage SQL
    Réponses: 4
    Dernier message: 10/10/2008, 13h42
  3. Update sur une jointure
    Par nellynew dans le forum Langage SQL
    Réponses: 5
    Dernier message: 25/01/2007, 17h56
  4. Problème update & concat
    Par beberd dans le forum Requêtes
    Réponses: 11
    Dernier message: 12/12/2006, 19h54
  5. UPDATE multiple avec jointure
    Par PyRoFlo dans le forum Requêtes
    Réponses: 6
    Dernier message: 25/05/2006, 15h56

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