sql >> Base de Datos >  >> RDS >> Sqlserver

Total acumulado de SQL agrupado por fecha

Si está utilizando un producto que implementa cláusulas OVER ordenadas para SUM, puede hacer algo como esto:

select
  cast(DeliveredDate as date) as DeliveredDate,
  count(Delivered) as Delivered,
  sum(count(Delivered)) over (
    order by DeliveredDate
  ) as RunningTotal
from Orders
group by OrderDate
order by OrderDate;

Su recuento de expresiones (Entregado) es un poco extraño. Solo para asegurarse de que es lo que desea:contará el número de filas en la fecha particular para las cuales el valor en la columna Entregado NO es NULO.