Cái bạn cần nằm trong nhóm hàm gọi là Analytic Functions.
VD như tôi có dữ liệu như bên dưới:
Sale_Year Sale_Mon Sum_Sale
----------- ----------- --------------------
2023 1 10
2023 2 10
2023 3 10
2023 4 10
2023 5 10
2023 6 10
2024 1 20
Sau khi dùng hàm SUM() theo cú pháp của analytic function thì nó sẽ ra như sau:
Sale_Year Sale_Mon Sum_Sale Sum sales Before
----------- ----------- -------------------- --------------------
2023 1 10 10
2023 2 10 20
2023 3 10 30
2023 4 10 40
2023 5 10 50
2023 6 10 60
2024 1 20 20
Đây là câu lệnh:
SELECT Sale_Year, Sale_Mon, Sum_Sale,
sum(Sum_Sale) OVER(PARTITION BY sale_year Order by sale_mon) as "Sum sales Before"
FROM monthly_sale