Calcul du total d'exécution MySQL : solution complète
Dans MySQL, le calcul d'un total cumulé pour un ensemble de données donné peut être réalisé de manière simple. Pour ce faire, considérons la requête suivante :
<code class="language-sql">SELECT DAYOFYEAR(`date`) AS d, COUNT(*) FROM `orders` WHERE `hasPaid` > 0 GROUP BY d ORDER BY d</code>
Cette requête renvoie un tableau avec la colonne (d) pour le jour de l'année et le nombre correspondant de commandes payées pour cette date. Pour ajouter une colonne de total cumulé, nous pouvons utiliser la variable @runtot et modifier la requête comme suit :
<code class="language-sql">SET @runtot := 0; SELECT q1.d, q1.c, (@runtot := @runtot + q1.c) AS rt FROM (SELECT DAYOFYEAR(`date`) AS d, COUNT(*) AS c FROM `orders` WHERE `hasPaid` > 0 GROUP BY d ORDER BY d) AS q1</code>
Dans cette requête mise à jour :
SET @runtot := 0;
Initialisez la variable de total cumulé à zéro. (@runtot := @runtot q1.c) AS rt
Calculez le total cumulé en ajoutant chaque valeur c au total cumulé précédent et attribuez-le à la colonne « rt ». Le résultat de cette requête sera un nouveau tableau avec une colonne « rt » supplémentaire représentant le total cumulé des commandes payées pour chaque jour.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!