zoukankan      html  css  js  c++  java
  • DB2中OLAP函数使用示例

     
    下面的需求是将不仅获取查询的结果集,还要将结果集的SIZE返回。结果集的SIZE是无法通过CURSOR获取的。
     
    通常聚合函数在二种情况下,使用默认分组即没有分组。可以直接使用,比如
    select 
           COUNT(1) as toalrows
      FROM FTP.NBZZ_KHLR_NEW_201312 a,
           DB2ADMIN.JAF_OM_EMPLOYEE b,
           FTP.ORG_EMP_HISTORY c
     WHERE     a.ZH = '7271010103100076601'
           AND a.OP_ID = b.userid
           AND b.EMPID = c.EMPID
           AND c.HISDATE = '2013-12-31';
     
    或者
     
    SELECT a.OP_ID,
           a.FHLRHZ,
           c.ORGNAME_LEVEL2,
           c.ORGNAME_LEVEL3,
           c.ORGSEQ,
           a.kmh,
           COUNT(1) as toalrows
      FROM FTP.NBZZ_KHLR_NEW_201312 a,
           DB2ADMIN.JAF_OM_EMPLOYEE b,
           FTP.ORG_EMP_HISTORY c
     WHERE     a.ZH = '7271010103100076601'
           AND a.OP_ID = b.userid
           AND b.EMPID = c.EMPID
           AND c.HISDATE = '2013-12-31';
           
           
    35000164 52560.00 客户四部 .citic.1.2221.2266. 1210100    1
    35000414 9855.00 客户四部 .citic.1.2221.2266. 1210100    1
    35000889 3285.00 客户四部 .citic.1.2221.2266. 1210100    1
     
     
    而有些时候需求是查询结果的同时,不想再写一条查询结果集大小的sql. 希望一并能查询出来。OLAP的提供的count(*) over() as nums可以解决。
    SELECT a.OP_ID,
           a.FHLRHZ,
           c.ORGNAME_LEVEL2,
           c.ORGNAME_LEVEL3,
           c.ORGSEQ,
           a.kmh,
           COUNT(1) OVER () as toalrows
      FROM FTP.NBZZ_KHLR_NEW_201312 a,
           DB2ADMIN.JAF_OM_EMPLOYEE b,
           FTP.ORG_EMP_HISTORY c
     WHERE     a.ZH = '7271010103100076601'
           AND a.OP_ID = b.userid
           AND b.EMPID = c.EMPID
           AND c.HISDATE = '2013-12-31';
     
     
    35000164 52560.00 客户四部 .citic.1.2221.2266. 1210100    3
    35000414 9855.00 客户四部 .citic.1.2221.2266. 1210100    3
    35000889 3285.00 客户四部 .citic.1.2221.2266. 1210100    3
     
     
    OLAP函数参考:http://www.cnblogs.com/Fskjb/archive/2011/02/28/1967429.html
  • 相关阅读:
    vue 中的registerServiceWorker
    转载:阿里手淘可伸缩布局方案amfe-flexible解决vue移动端适配问题
    转载:vue-clipboard2(vue剪切板功能)
    vue中节流函数实现搜索数据
    vue项目怎么阻止很快速的点击两次然后提交的两次请求
    IE10中show-overflow-tooltip不展示
    Oracle锁表查询和解锁方法
    自动重启sqlserver服务
    利用jQuery中live为动态生成Dom添加datepicker效果
    IIS7 https 发生413错误 未显示页面,因为请求实体过大
  • 原文地址:https://www.cnblogs.com/highriver/p/3659311.html
Copyright © 2011-2022 走看看