每行SQL中相同ID的总和

Him*_*shu 2 sql oracle group-by sum

我有桌子如下..

    r_Id     Marks
     1        25
     1        25   
     1        25
     2        30
     2        30  
Run Code Online (Sandbox Code Playgroud)

现在我想要一个查询,其中应计算每个r_id的标记总和,结果应该是

    r_Id  MARKS   Sum
     1      25    75   
     1      25    75
     1      25    75
     2      30    60 
     2      30    60
Run Code Online (Sandbox Code Playgroud)

我需要在oracle中执行此操作而不使用PL/SQL.请帮忙.我尝试在GROUP BY中使用CUBE,ROLLUP,GROUPING SETS,但没有任何工作.

Gor*_*off 6

您想要使用分析函数.这些是使用over子句的函数:

select r_id, Marks, sum(Marks) over (partition by r_id)
from t;
Run Code Online (Sandbox Code Playgroud)