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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  SQL questions sur update

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

SQL questions sur update

n°1965591
hutarios
Posté le 12-02-2010 à 18:45:58  profilanswer
 

bonjour,  
 
J'ai deux questions/problemes avec Update pour la mise a jour de tables :  
 
1/
je met à jour plusieurs champ d'une table et deux de ces champs ont la même valeur, existe t il une syntaxe de requete pour avoir quelque chose comme : UPDATE ma_table SET champ1=champ2=valeur1, champ3=valeur3,.....  ou "valeur1" est une sous requete avec des conditions que je voudrai éviter de la doubler.
 
2/
j'ai une table du type :  
 
lien | groupe | ville
A   | 1         | 450
B   | 1         | 0
C   | 2         | 0
D   | 2         | 210
E   | 2         | 0
 
je voudrai mettre a jour la ville quand elle est = 0 en fonction de la ville différente de 0 du meme groupe.
Je sais pas trop comment m'y prendre pour le faire en une seule requete (un UPDATE ma_table SET ville=ville WHERE..... ça parait bizarre).
 
 
 
Si quelqu'un a une idée ou une solution je suis preneur.  :jap:    
 
 
 
 

mood
Publicité
Posté le 12-02-2010 à 18:45:58  profilanswer
 

n°1965602
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 12-02-2010 à 20:44:48  profilanswer
 

hutarios a écrit :


1/
je met à jour plusieurs champ d'une table et deux de ces champs ont la même valeur, existe t il une syntaxe de requete pour avoir quelque chose comme : UPDATE ma_table SET champ1=champ2=valeur1, champ3=valeur3,.....  ou "valeur1" est une sous requete avec des conditions que je voudrai éviter de la doubler.


non, à la rigueur tu peux faire  

Code :
  1. SET @val = SELECT val FROM TABLE;
  2. UPDATE TABLE SET champ1=@val, champ2=@val, champ3=valeur3...


mais pas d'assignation multiple comme tu le souhaiterais.
 

hutarios a écrit :


2/
j'ai une table du type :  
 
lien | groupe | ville
A   | 1         | 450
B   | 1         | 0
C   | 2         | 0
D   | 2         | 210
E   | 2         | 0
 
je voudrai mettre a jour la ville quand elle est = 0 en fonction de la ville différente de 0 du meme groupe.
Je sais pas trop comment m'y prendre pour le faire en une seule requete (un UPDATE ma_table SET ville=ville WHERE..... ça parait bizarre).


tu es obligé de le faire en une seule requête ?


---------------
J'ai un string dans l'array (Paris Hilton)
n°1965612
hutarios
Posté le 12-02-2010 à 21:20:41  profilanswer
 

Merci Harkonnen pour ta réponse, pour la 2 je ne suis pas obligé, actuellement ça fonctionne avec plusieurs requetes et des variables en php mais ce script est assez long pour metre la table entièrement à jour, je cherche quelque chose de plus rapide avec uniquement des requetes SQL sans passer par des variables en php.


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

  SQL questions sur update

 

Sujets relatifs
Problème avec requêtes SQL[SQL] Copie table avec ajout de champs
Outil pour Pervasive SQL Version 7BlaBla@SQL
Requete SQL de selection complexe[SQL SERVER] Ajout d'une colonne en PS...mais inutilisable
[ODBC] DSN pour se connecter à une base SQL[PDO/SQL] Aide selection et classement (JOIN ??)
Problème conditions requete SQL 
Plus de sujets relatifs à : SQL questions sur update


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