Requête UPDATE, possibilité de DIV/0

Mammouth du PHP | 568 Messages

28 oct. 2005, 14:54

Bonjour les jeunes !

Après quelques jours d'absences, je reviens, mais pour poser une question...

J'ai un peu délaissé PHP ces derniers jours pour du développement VB, mais j'ai un soucis de SQL qui m'est tombé dessus... A savoir :

J'ai une table avec 3 champs numériques.
Je renseigne les 2 premiers, puis j'exécute une requête pour mettre à jour le 3ème qui doit contenir le résultat du 1ère divisée par la seconde... Soit :

Code : Tout sélectionner

UPDATE table SET champ3=champ1/champ2
Rien de bien méchant, si ce n'est que mon champ2 peux contenir des 0 et là, problème !

Donc je me demandais s'il n'y avais pas moyen dans la requête de dire que si champ2=0 alors champ2=1...

Au cas où, je ne peux pas le faire dans le code puisque j'insère disctinctement les valeurs. D'abord tous champ1, puis tout cham2...

Vous avez des idées ? En attendant, je retourne dans la doc :roll:
Heddi s'est remis à développer pour lui même !
Martina Hingis - Étoile du Tennis
Heddi v. 2007

Mammouth du PHP | 568 Messages

28 oct. 2005, 15:30

Bon j'ai eu ma réponse :p

Il faut utiliser Iif() (je sais pas si if() passe de façon général, mais sous access, il en veux pas...)

Ca nous donne :

Code : Tout sélectionner

UPDATE table SET champ1/Iif(champ2=0, 1, champ2)
Heddi s'est remis à développer pour lui même !
Martina Hingis - Étoile du Tennis
Heddi v. 2007