Java軟件報表軟件技術博客

          java報表軟件技術匯總 java報表軟件制作 報表軟件新聞
          posts - 355, comments - 100, trackbacks - 0, articles - 3
             :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

          先看看效果:



          報表軟件:FineReport


          1.分析-與正常查詢的對比

          如果不做這種樹狀結構展開的報表的話,正常的SQL應該是這樣寫的,以單據表為例,假設單據的機構為分公司,經營部

          select 分公司編碼,分公司名稱,經營部編碼,經營部名稱,sum(數量) 總數量,sum(金額) 總金額

          from order_header,order_itemoi

          whereoh.order_id=oi.order_id

          andoh.party_id_from in ('$(分公司編碼)')

          andoh.confirm_date >to_date('${startDatre}','yyyy-mm-dd')

          andoh.confirm_date<to_date('${endDatre}','yyyy-mm-dd')+1

          group by 分公司編碼,分公司名稱,經營部編碼,經營部名稱

          2.SQL-over partition的應用

          如果要做成在經營部級別匯總金額和數量,同時在分公司級別也要匯總數量和金額的話,那么,需要在1中的基礎上做增加,在每一行上增加一列,來表示當前行所在的分公司的匯總的金額和數量,SQL如下

          select 分公司編碼,分公司名稱,經營部編碼,經營部名稱,

          sum(數量) 經營部總數量,sum(sum(數量)) over (partition by 分公司編碼)  分公司數量,

          sum(金額) 經營部總金額,sum(sum(金額)) over (partition by 分公司編碼)  分公司金額

          fromorder_header,order_item oi

          whereoh.order_id=oi.order_id

          andoh.party_id_from in ('$(分公司編碼)')

          andoh.confirm_date >to_date('${startDatre}','yyyy-mm-dd')

          andoh.confirm_date<to_date('${endDatre}','yyyy-mm-dd')+1

          group by 分公司編碼,分公司名稱,經營部編碼,經營部名稱

          3.展示界面的設置和訪問注意事項

          展示界面的設置,一點點寫比較麻煩,我就不講了。最后,訪問的時候需要在url后面加上參數op=sheet

           




          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 巴塘县| 尼玛县| 伊金霍洛旗| 通榆县| 桐城市| 长顺县| 六安市| 铜川市| 莱阳市| 明光市| 尉氏县| 青岛市| 广安市| 柳州市| 建阳市| 诸暨市| 武陟县| 汪清县| 额尔古纳市| 镇宁| 南江县| 桃源县| 凤城市| 和平区| 永昌县| 双峰县| 定州市| 会理县| 萍乡市| 蓬溪县| 偏关县| 莱芜市| 巴楚县| 长宁区| 兴业县| 田东县| 清涧县| 宝鸡市| 皋兰县| 晴隆县| 灌阳县|