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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Update Conditionnel Mysql

 

Sujet(s) à lire :
 

 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Update Conditionnel Mysql

n°2218009
maestro130​3
Posté le 29-01-2014 à 12:17:16  profilanswer
 

Bonjour,
 
 
J'ai deux tables T1 et T2 ayant -à peu près-la même structure  
 
T1                      
clé,C1,C2,C3  
           
T2
  clé,C1,C2,C3  
 
les champs c1,c2 et C3 ont par défaut la valeur '555', mais peuvent contenir d'autres valeurs < 1
 
Pour parler des champs c1,c2 et C3 j'utilise  Ci  
 
Je dois donc parcourir T2 et T1  
Si je trouve t1.cle=t2.cle alors je mets les données à jour dans t1 de la manière suivante:
 

  • si (T2.Ci<> '555' et  T1.Ci='555' ) alors (update t1 set T1.Ci= T2.Ci)
  • Si (si (T2.Ci<> '555' et  T1.Ci<> '555') et (T2.Ci<T1.Ci)) alors (update t1 set T1.Ci= T2.Ci)


  • Enfin  je supprime dans T2 l'enregistrement correspondant à t2.cle avec lequel on a fait les updates précédents dans T1.


Ma question : quelle est la requête ou les requêtes  SQL pour effectuer cette tâche?
 
Merci infiniment


Message édité par maestro1303 le 29-01-2014 à 15:09:14
mood
Publicité
Posté le 29-01-2014 à 12:17:16  profilanswer
 

n°2218090
poulpeleac​h
Octopus paradisi
Posté le 30-01-2014 à 08:05:27  profilanswer
 

J attend tjs des nouvelles.

n°2218096
gpl73
Posté le 30-01-2014 à 09:42:32  profilanswer
 

tu as essayé :
Update t1 as a set a.c1 = (select      
case                                    
when cas1 then resultat1                
when cas2 then resultat2                
end                                    
from T2 as b where                      
 b.clé = a.clé)                        
where                                  
T1.cle in (select T2.cle from T2)...
pareil pour les champs suivants...
Pour le delete : cherches... :) c'est pas compliqué...
                                       

n°2218182
maestro130​3
Posté le 30-01-2014 à 19:39:05  profilanswer
 

Merci bien gpl73,
J'essaie ta proposition et je dis.
 
 
Merci infiniment


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

  Update Conditionnel Mysql

 

Sujets relatifs
[RESOLU][mysql][auto_increment] comment reinitialiser un incrementInjecter un fichier CSV avec un script php
[SQL] on duplicate key updateUpdate dans logging (oracle)
Mysql Requête pour supprimer doublons spéciauxRequête MYSQL avec Where un peu complexe
[Mysql] Modification d'une partie d'une valeurProblème de connexions successives à MYSQL
Script pour gérer les dates-heures comme dans MySql dans un formulairerequete mysql ou comparaison de tableaux php ?
Plus de sujets relatifs à : Update Conditionnel Mysql


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