Collé à ce sujet un peu aujourd'hui et je me demandais si quelqu'un pouvait suggérer ce qui ne va pas. Voici mon code:ROLLUP retournant une valeur incorrecte
select g.game_name, r.rental_id, sum(if(datediff(r.return_date, r.due_date) > 0, datediff(r.return_date, r.due_date) * g.overdue_charge_per_day, 0)) Overdue_Charges
from rental as r
left join game as g
on r.game_id = g.game_id
where month(r.return_date)=month(now())
group by rental_id
with rollup;
Cette affiche les éléments suivants:
GTA V 12 4,00
Tony Hawk 13 15.00
Tony Hawk null 19.00
Il totalise 4 & 15. Cependant, je ne veux pas qu'il affiche deux fois "Tony Hawk". Puis-je le remplacer par Grand Total? Peut-être que c'est un problème d'adhésion et le deuxième Tony Hawk devrait aussi être nul. Merci
Hey, mais affiche toujours le nom Tony Hawk deux fois, est-il un problème avec ma jointure? –
La jointure est OK. Vous devrez peut-être le mettre dans une sous-requête et faire le 'if 'supplémentaire dans la requête externe. – trincot