Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Trailing-Sum-Abfrage

Eine einfache Möglichkeit besteht darin, die Tabelle mit sich selbst zu verbinden. Stellen Sie sicher, dass es auf eine Kombination aus Datum und Gesamtzahl indexiert ist.

select t1.date
     , t1.total
     , t1.total 
      +coalesce(t2.total,0)
      +coalesce(t3.total,0)
  from theTable t1
  left 
  join theTable t2 on t1.date = date_Add(t2.date,interval 1 day)
  left
  join theTable t3 on t1.date = date_Add(t3.date,interval 2 day)