SQL para acumulación mensual

100 de enero, 200 de febrero, 100 de marzo, 200 de abril. Las estadísticas son las siguientes: 100 de enero, 300 de febrero, 500 de marzo, 600 de abril. [Es para contar el total de todos los meses anteriores una vez al mes]

Ir directamente a sql

select month,amount,sum(amount) over(order by month asc) from expense;

select t.* ,(select sum(amount) from expense where month <= t.month) from expense t;

Ambos métodos de escritura SQL son compatibles con Oracle y el segundo método de escritura no es compatible con Spark SQL.

Date prisa, para no preguntar si te quedas sin palabras.

Supongo que te gusta

Origin blog.csdn.net/qq_32445015/article/details/102538313
Recomendado
Clasificación