<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    PS,1880后程序員

    看不完的牙,寫不完的程序,跑不完的步。
    隨筆 - 97, 文章 - 34, 評論 - 10, 引用 - 0
    數據加載中……

    Oracle 逐級匯總

     CREATE TABLE report

      ( id NUMBER(2),

        year NUMBER(4),

        month NUMBER(2),

        amt NUMBER(3)) ;

        

     

    INSERT INTO report( id, year, month, amt ) VALUES(1, 2011, 1, 110 ) ;

    INSERT INTO report( id, year, month, amt ) VALUES(1, 2011, 2, 120) ;

    INSERT INTO report( id, year, month, amt ) VALUES(1, 2011, 3, 130) ;

    INSERT INTO report( id, year, month, amt ) VALUES(1, 2011, 4, 140) ;

    INSERT INTO report( id, year, month, amt ) VALUES(1, 2011, 5, 150) ;

    INSERT INTO report( id, year, month, amt ) VALUES(1, 2011, 6, 160) ;

    INSERT INTO report( id, year, month, amt ) VALUES(1, 2011, 7, 170) ;

    INSERT INTO report( id, year, month, amt ) VALUES(1, 2011, 8, 180) ;

    INSERT INTO report( id, year, month, amt ) VALUES(1, 2011, 9, 190) ;

    INSERT INTO report( id, year, month, amt ) VALUES(1, 2011, 10, 100) ;

    INSERT INTO report( id, year, month, amt ) VALUES(1, 2011, 11, 110) ;

    INSERT INTO report( id, year, month, amt ) VALUES(1, 2011, 12, 110) ;

    INSERT INTO report( id, year, month, amt ) VALUES(2, 2012, 1, 110 ) ;

    INSERT INTO report( id, year, month, amt ) VALUES(2, 2012, 2, 120) ;

    INSERT INTO report( id, year, month, amt ) VALUES(2, 2012, 3, 130) ;

    INSERT INTO report( id, year, month, amt ) VALUES(2, 2012, 4, 140) ;

    INSERT INTO report( id, year, month, amt ) VALUES(2, 2012, 5, 150) ;

    INSERT INTO report( id, year, month, amt ) VALUES(2, 2012, 6, 160) ;

    INSERT INTO report( id, year, month, amt ) VALUES(2, 2012, 7, 170) ;

    INSERT INTO report( id, year, month, amt ) VALUES(2, 2012, 8, 180) ;

    INSERT INTO report( id, year, month, amt ) VALUES(2, 2012, 9, 190) ;

    INSERT INTO report( id, year, month, amt ) VALUES(2, 2012, 10, 100) ;

    INSERT INTO report( id, year, month, amt ) VALUES(2, 2012, 11, 110) ;

    INSERT INTO report( id, year, month, amt ) VALUES(2, 2012, 12, 110) ;

    -- 逐級匯總

     

    select id, year, month, sum(amt) 

      from report 

      group by rollup( id, year, month ) ;

     

            ID       YEAR      MONTH   SUM(AMT)

    ---------- ---------- ---------- ----------

             1       2011          1        220

             1       2011          2        240

             1       2011          3        260

             1       2011          4        280

             1       2011          5        300

             1       2011          6        320

             1       2011          7        340

             1       2011          8        360

             1       2011          9        380

             1       2011         10        200

             1       2011         11        220

             1       2011         12        220

             1       2011                  3340 -- 1, 2011, 小計

             1                             3340 -- 1, 小計

             2       2012          1        110

             2       2012          2        120

             2       2012          3        130

             2       2012          4        140

             2       2012          5        150

             2       2012          6        160

             2       2012          7        170

             2       2012          8        180

             2       2012          9        190

             2       2012         10        100

             2       2012         11        110

             2       2012         12        110

             2       2012                  1670 -- 2, 2012, 小計

             2                             1670 -- 2, 小計

                                           5010 -- 1+2, 總計

     

    如果只要每年的小計, SQL如下

     

    select *

      from (

    select id, year, month, sum(amt) 

      from report 

      group by rollup( id, year, month ) )

      where id is not null

        and year is not null ;

     

            ID       YEAR      MONTH   SUM(AMT)

    ---------- ---------- ---------- ----------

             1       2011          1        220

             1       2011          2        240

             1       2011          3        260

             1       2011          4        280

             1       2011          5        300

             1       2011          6        320

             1       2011          7        340

             1       2011          8        360

             1       2011          9        380

             1       2011         10        200

             1       2011         11        220

             1       2011         12        220

             1       2011                  3340

             2       2012          1        110

             2       2012          2        120

             2       2012          3        130

             2       2012          4        140

             2       2012          5        150

             2       2012          6        160

             2       2012          7        170

             2       2012          8        180

             2       2012          9        190

             2       2012         10        100

             2       2012         11        110

             2       2012         12        110

             2       2012                  1670

     

    posted on 2012-08-09 13:50 amenglai 閱讀(429) 評論(0)  編輯  收藏 所屬分類: 編程語言

    主站蜘蛛池模板: 日韩在线观看免费| 污视频网站在线观看免费| 国产免费女女脚奴视频网| 亚洲综合久久1区2区3区| 最近中文字幕无免费| 香蕉大伊亚洲人在线观看| 国内外成人免费视频| 一级毛片免费视频网站| 亚洲午夜福利717| 性xxxxx大片免费视频| 亚洲一区二区三区国产精华液| 好爽好紧好大的免费视频国产| a级毛片免费观看视频| 亚洲人成电影院在线观看| 亚洲福利精品电影在线观看| 全免费a级毛片免费看| 亚洲日韩AV一区二区三区四区| 亚洲毛片不卡av在线播放一区| 182tv免费视视频线路一二三| 全部免费毛片在线| 5g影院5g天天爽永久免费影院| 色网站在线免费观看| 亚洲毛片无码专区亚洲乱| 亚洲精品成人久久久| 毛片免费观看的视频在线| 国产色无码精品视频免费| 国产精品久久亚洲一区二区| 亚洲天堂视频在线观看| 中文字幕亚洲一区二区三区| 丁香花免费完整高清观看 | 最近中文字幕无免费| aa毛片免费全部播放完整| 国产亚洲精品第一综合| 亚洲天堂2017无码中文| 亚洲AV中文无码字幕色三| 亚洲av无码不卡私人影院| 日本免费一区二区三区最新vr| 99在线视频免费观看视频 | 亚洲综合网站色欲色欲| 亚洲av区一区二区三| 国产成人精品高清免费|