updater une valeur seulement si superieure [resolu] - SQL/NoSQL - Programmation
Marsh Posté le 03-04-2006 à 11:19:41
update table set valeur=newValeur
where newValeur>valeur
???
Par contre tous les enregistrements vont avoir la même valeur au final si tu ne fait pas de distinction en fonction d'une clé primaire ou d'un index unique.
C'est le but de la manoeuvre ?
Marsh Posté le 03-04-2006 à 12:55:28
non ce n'est pas le but, juste un enregistrement précis, et j'aimerai mettre à jour plusieurs champs en une fois. Du style
update table set valeur = max(valeur, newValeur), valeur2 = max(valeur2, newValeur2) where id = 5;
(j'ai edit mon premier message pour plus de clarté)
Marsh Posté le 03-04-2006 à 13:12:57
Et
update table set valeur = if(valeur < newValeur, newValeur, valeur) where id = 5;
Ca marche pas dans ton cas ?
Marsh Posté le 03-04-2006 à 14:26:08
niquel ça marche, merci bcp
Vous foutez pas de moi, mais je savais pas qu'on pouvait faire des conditions en SQL
Marsh Posté le 03-04-2006 à 00:43:15
hello,
J'aurai voulu savoir comment determiner un max entre deux valeurs avec MySQL. Voilà ce que j'aimerais faire :
update table set valeur = newValeur, valeur2 = newValeur2 where id= 5;
mais j'aimerais que cette update se fasse seulement si newValeur est superieure à valeur, un peu comme si on faisait un truc ressemblant à :
update table set valeur = max(valeur, newValeur), valeur2 = max(valeur2, newValeur2) where id = 5;
j'aimerai que newValeur ne soit pris en compte que si supérieur à valeur.
Cela est-il possible ? Avec quelle syntaxe ? merci
Message édité par Djebel1 le 03-04-2006 à 14:49:39