sql 中不同列中每行的数据总和

Sum of data at each row in different column in sql

我需要创建一个不同的总销售额列,它是直到该行的销售单位总数。随着我们销售单位的增加,总销售额会逐行增加。我附上了图片以获得清晰的想法。

截图

您可以使用以下查询,该查询将特定产品的所有销售额加起来 rowId

select (select sum(ids)
         from TBL_NAME T1 
         where T1.rowid <= TBL_NAME.rowid  and PRODUCT=TBL_NAME.PRODUCT
       ) as TotalSales     
 from TBL_NAME;

以下答案针对 Oracle DB,您可以理解查询并轻松将其转换为您想要的产品。

一种方法是通过 correlation 方法使用子查询

select *,  
         (select sum(sales) from table where product = t.product and ? <= t.?) TotalSales
from table t

但是,您需要 ?(即 rowidid)可以指定列排序的列。