Risposta aggiornata
L'OP ha richiesto un approccio a query singola, in modo da non dover SET una variabile utente separatamente dall'utilizzo della variabile per calcolare il totale parziale:
SELECT d.date,
@running_sum:[email protected]_sum + d.count AS running
FROM ( SELECT date, COUNT(*) AS `count`
FROM table1
WHERE date > '2011-09-29' AND applicationid = '123'
GROUP BY date
ORDER BY date ) d
JOIN (SELECT @running_sum := 0 AS dummy) dummy;
L'"inizializzazione in linea" delle variabili utente è utile anche per simulare altre funzioni analitiche. In effetti ho imparato questa tecnica dalle risposte come questa .
Risposta originale
Devi introdurre una query di inclusione per tabulare il @running_sum
oltre i tuoi COUNT(*) record registrati:
SET @running_sum=0;
SELECT d.date,
@running_sum:[email protected]_sum + d.count AS running
FROM ( SELECT date, COUNT(*) AS `count`
FROM table1
WHERE date > '2011-09-29' AND applicationid = '123'
GROUP BY date
ORDER BY date ) d;
Vedi anche questa risposta .