Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1972 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SQL] Fusionner 2 champs de 2 tables différentes [résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[SQL] Fusionner 2 champs de 2 tables différentes [résolu]

n°2149202
Atheus
Posté le 13-07-2012 à 09:48:49  profilanswer
 

Bonjour,
 
après moults recherches et essais, je n'arrive pas à faire quelque chose de "probablement très simple" pour un expert en SQL.
Vu que c'est loin d'être mon cas, je vous soumets ma problématique.
 
J'ai 2 tables MySQL
 
table1 et table2
 
Ma table1 est complète, avec beaucoup de champs. Elle contient entre autre, un champ PSEUDO et un champ EMAIL
 
Ma table2, issue d'un traitement extérieur, ne contient que 2 champs, PSEUDO et EMAIL
 
Quelle est la requête permettant de mettre à jour l'unique champs EMAIL de la table1 depuis les données de la table2 ? Le but étant de ne pas écraser des données déjà présentes dans la table1, mais simplement de mettre à jour avec des données manquantes.
 
D'avance merci.


Message édité par Atheus le 13-07-2012 à 14:31:01
mood
Publicité
Posté le 13-07-2012 à 09:48:49  profilanswer
 

n°2149213
vave
Nice to meet me
Posté le 13-07-2012 à 10:28:31  profilanswer
 

Bonjour,

Code :
  1. update table1 set table1.email = (select table1.email FROM table2 where table1.pseudo = table2.pseudo) where table1.email = ''


---------------
Bel ours Vave, je me dois de l’admettre. -Skyl"win"-  Mais toi tu es intelligent -Homerde- - Ce génie -SkylWINd- JDD S16M72 10:43:46 GMT-DTC +1
n°2149220
Atheus
Posté le 13-07-2012 à 11:07:14  profilanswer
 

Merci pour cette réponse rapide.
J'ai inséré cette requête via phpmyadmin pour l'éxecuter ... Elle s'execute bien, je n'ai pas de message d'erreur ... Mais la table1 ne se met pas à jour. En gros, ça ne fait rien.

n°2149225
vave
Nice to meet me
Posté le 13-07-2012 à 12:01:19  profilanswer
 

Et si tu fais select * from table1 where email= '' tu as des résultats ?
 
Ce que je t'ai mis c'est seulement pour les lignes où email est vide dans ta table1.  
Si tu le veux pour la table1 complète sans conditions, tu vires le dernier where …


---------------
Bel ours Vave, je me dois de l’admettre. -Skyl"win"-  Mais toi tu es intelligent -Homerde- - Ce génie -SkylWINd- JDD S16M72 10:43:46 GMT-DTC +1
n°2149227
Atheus
Posté le 13-07-2012 à 12:31:44  profilanswer
 

Bien sûr, si je fais :
SELECT * FROM table1 WHERE email='', j'ai bien mon tableau avec les champs email vides.
 
Et la requete sans le dernier where ne donne rien non plus :

Code :
  1. 1.update table1 set table1.email = (select table1.email FROM table2 where table1.pseudo = table2.pseudo)

n°2149229
Atheus
Posté le 13-07-2012 à 12:34:26  profilanswer
 

Edit ... En fait, ça n'a pas rien fait, ça a supprimé toutes les infos du champ email déjà présentes (j'avais fait une copie pour test, donc pas grave) ...


Message édité par Atheus le 13-07-2012 à 12:36:05
n°2149238
vave
Nice to meet me
Posté le 13-07-2012 à 13:49:19  profilanswer
 

vave a écrit :

Bonjour,

Code :
  1. update table1 set table1.email = (select table2.email FROM table2 where table1.pseudo = table2.pseudo) where table1.email = ''



 
 [:pikitfleur:1]  
erreur de copié/collé de ma part, toutes mes confuses  :o  
 


---------------
Bel ours Vave, je me dois de l’admettre. -Skyl"win"-  Mais toi tu es intelligent -Homerde- - Ce génie -SkylWINd- JDD S16M72 10:43:46 GMT-DTC +1
n°2149240
Atheus
Posté le 13-07-2012 à 14:29:31  profilanswer
 

Je te remercie vivement : Ca fonctionne très bien.
Et honte à moi qui n'avait pas vu "ton erreur". Merci encore !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SQL] Fusionner 2 champs de 2 tables différentes [résolu]

 

Sujets relatifs
[Oracle 11g] Deplacer mes tables dans un autre schema/tablespaceFulltext et Fuzzy search sur SQL Server
Temps d'éxécution requête Oracle Sql trop longueModifier valeur dans une base SQL
Insertion de caractère dans un nom de mes champs XMLdifférences entre SQL Server et MySQL
[SP4 SQL Server 2000] Developer Edition[SQL] Une requette avec DISTINCT et COUNT
PhP: Comment passer d'une BDD SQL à SQLite?Help! Extraire données en tableau + publipostage
Plus de sujets relatifs à : [SQL] Fusionner 2 champs de 2 tables différentes [résolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR