Heim >Datenbank >MySQL-Tutorial >Wie erstelle ich effizient eine kumulative Summenspalte in MySQL?
Kumulative Summenspalte in MySQL erstellen
Um der Tabelle eine kumulative Summenspalte (cumulative_sum) hinzuzufügen, müssen Sie die vorhandene Spalte mit einer laufenden Summe aktualisieren. Hier sind zwei Möglichkeiten, dies in MySQL zu erreichen:
Verwenden Sie eine korrelierte Unterabfrage:
<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>
Diese Abfrage verwendet eine verschachtelte Abfrage, um die kumulative Summe jeder Zeile basierend auf Zeilen mit IDs zu berechnen, die kleiner oder gleich der aktuellen Zeilen-ID sind.
MySQL-Variablen verwenden:
<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>
Diese Methode nutzt MySQL-Variablen, um die laufende Summe zu verfolgen, während über Zeilen iteriert wird. Die Variable @running_total wird auf 0 initialisiert und dann für jede Zeile erhöht.
Hinweis:
Das obige ist der detaillierte Inhalt vonWie erstelle ich effizient eine kumulative Summenspalte in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!