Remplir une table à partir des données d'une autre table

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Remplir une table à partir des données d'une autre table

Re: Remplir une table à partir des données d'une autre table

par riless » 18 sept. 2012, 11:36

Merci Mazarini, c'est exactement ce que je cherchait :)

Re: Remplir une table à partir des données d'une autre table

par Mazarini » 18 sept. 2012, 10:54

Tu peux essayer :
update a,b set b.ville = a.ville where a.codepostal = b.codepostal
Edit : Un peu en retard et 1 code postal (69380 par exemple) correspond à plus d'une ville

Re: Remplir une table à partir des données d'une autre table

par xTG » 18 sept. 2012, 10:52

Regardes du côté de UPDATE ... FROM ;)
On ne peut guère t'en dire plus sans connaitre le SGBD utilisé.

Re: Remplir une table à partir des données d'une autre table

par nhachet » 18 sept. 2012, 10:52

Bonjour,

aucun problème, il est possible de faire un update avec une jointure.
Ca donnerait quelque chose comme ça (non testé) :
UPDATE B
INNER JOIN A USING(codepostal)
SET B.ville = A.ville;

Remplir une table à partir des données d'une autre table

par riless » 18 sept. 2012, 10:24

Bonjour à tous,

j'aimerais savoir si c'est possible avec une requête SQL de faire ça, et si oui, quelle est la requête appropriée:

j'ai une table "A" contenant les colonne "codepostal" et "ville", et une table "B" contenant également "codepostal" et "ville", sauf que dans la table "B" la colonne "ville" est vide. je voudrais alors, avec une requête SQL, remplir toute les ligne de "B.ville" en tenant compte biensur de "B.codepostal" qui vas aller chercher la ville correspondante dans la table "A".

Donc en résumé, je voudrais remplir la colonne "ville" de la table "B" avec les valeurs correspondante.

merci