Maison >base de données >tutoriel mysql >Comment créer efficacement une colonne de somme cumulative dans MySQL ?
Créer une colonne de somme cumulée dans MySQL
Pour ajouter une colonne de somme cumulée (cumulative_sum) au tableau, vous devez mettre à jour la colonne existante avec un total cumulé. Voici deux façons d’y parvenir dans MySQL :
Utiliser une sous-requête corrélée :
<code class="language-sql">SELECT t.id, t.count, ( SELECT SUM(x.count) FROM table AS x WHERE x.id <= t.id ) AS cumulative_sum FROM table AS t ORDER BY t.id;</code>
Cette requête utilise une requête imbriquée pour calculer la somme cumulée de chaque ligne en fonction des lignes dont les ID sont inférieurs ou égaux à l'ID de ligne actuel.
Utiliser les variables MySQL :
<code class="language-sql">SELECT t.id, t.count, (@running_total := @running_total + t.count) AS cumulative_sum FROM table AS t JOIN (SELECT @running_total := 0) AS r ORDER BY t.id;</code>
Cette méthode utilise des variables MySQL pour suivre le total cumulé lors de l'itération sur les lignes. La variable @running_total est initialisée à 0 puis incrémentée pour chaque ligne.
Remarque :
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!