22-07-2007, 07:52 PM
(Modification du message : 22-07-2007, 07:54 PM par NicoMSEvent.)
CEIL n'est pas la bonne fonction a employer. Le but de la manoeuvre était de remplacer la valeur NULL par 0.. je viens de (re)trouver la fonction equivalente à NVL pour Oracle, c'est IFNULL pour MySQL.
Donc, remplace NVL (ou CEIL) par IFNULL, ça devrait marcher.
IFNULL(a,b) => si a est null, ça remplace par b...
Donc, remplace NVL (ou CEIL) par IFNULL, ça devrait marcher.
Code :
UPDATE dj SET dj.xp_dj=dj.xp_dj+(
SELECT IFNULL(SUM(objet.xp_objet*3*(soiree.reussite_soiree+50) )/100 ,0)
FROM soiree
LEFT JOIN matos ON matos.id_dj=soiree.id_dj
LEFT JOIN objet ON objet.id_objet=matos.id_objet
WHERE soiree.date_soiree="2007-07-19" AND soiree.id_dj=dj.id_dj
GROUP BY dj.id_dj
)
IFNULL(a,b) => si a est null, ça remplace par b...
Je signale que je ne détiens pas la vérité unique et absolue, je peux me tromper. La critique peut aussi être constructive. Critiquez moi!
La quête d'Ewilan
http://easy2hack.ma-soiree.be
La quête d'Ewilan
http://easy2hack.ma-soiree.be