1. 程式人生 > >Oracle分組統計,rollup函式使用示例

Oracle分組統計,rollup函式使用示例

要查詢的表結構以及測試資料如下:
rollup_test_table
yyyyMMcum_user(累計使用者)new_user(新使用者)
2018/186
2018/286

分組統計並計算新使用者佔比的查詢sql:

select 

    nvl(yyyyMM,'總計') yyyyMM,

    sum(cum_user) cumUser,

    sum(new_user) newUser,

    sum(new_user)/sum(cum_user) newUserRatio --新使用者佔比:新使用者/累計使用者

from roll_test_table 

group by rollup(yyyyMM);

查詢結果如下:

查詢結果
yyyymmcumusernewusernewuserratio
2018/1860.75
2018/2860.75
總計16120.75