3 回答

TA貢獻1811條經(jīng)驗 獲得超6個贊
SET @runtot:=0;SELECT q1.d, q1.c, (@runtot := @runtot + q1.c) AS rtFROM (SELECT DAYOFYEAR(`date`) AS d, COUNT(*) AS c FROM `orders` WHERE `hasPaid` > 0 GROUP BY d ORDER BY d) AS q1

TA貢獻1860條經(jīng)驗 獲得超8個贊
SELECT DAYOFYEAR(O.`date`) AS d, COUNT(*), (select count(*) from `orders` where DAYOFYEAR(`date`) <= d and `hasPaid` > 0)FROM `orders` as OWHERE O.`hasPaid` > 0GROUP BY dORDER BY d

TA貢獻1963條經(jīng)驗 獲得超6個贊
SELECT dayofyear(`date`) AS d, count(*), sum(count(*)) OVER (ORDER BY dayofyear(`date`))FROM `orders`WHERE `hasPaid` > 0GROUP BY dORDER BY d
count(*)
sum(..) OVER (..)
WITH
WITH daily (d, c) AS ( SELECT dayofyear(`date`) AS d, count(*) FROM `orders` WHERE `hasPaid` > 0 GROUP BY d)SELECT d, c, sum(c) OVER (ORDER BY d)ORDER BY d
添加回答
舉報