博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DB2中OLAP函数使用示例
阅读量:7088 次
发布时间:2019-06-28

本文共 1374 字,大约阅读时间需要 4 分钟。

 
下面的需求是将不仅获取查询的结果集,还要将结果集的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
你可能感兴趣的文章
mysql基本数据类型(mysql学习笔记三)
查看>>
Laravel踩坑笔记——illuminate/html被抛弃
查看>>
飞秋命令行
查看>>
做题时一时没想起来的问题总结
查看>>
[转]python-元类
查看>>
复习日记-Listener/filter/servlet3.0/动态代理
查看>>
Win7x64安装了DroidPilot-Win64.exe之后跑不起来 -- 解决办法
查看>>
VS2010 中C++ 和C# 颜色转化
查看>>
java 自带的工具
查看>>
CentOS 7配置MariaDB允许指定IP远程连接数据库
查看>>
计算机基础——指令与程序
查看>>
用三段 140 字符以内的代码生成一张 1024×1024 的图片<转载>
查看>>
HTML CSS
查看>>
sqlserver存储过程中SELECT 与 SET 对变量赋值的区别
查看>>
【分享】开源富文本编辑器之间的较量
查看>>
logback的使用和logback.xml详解
查看>>
Android Studio -- 关联源码
查看>>
leetcode Majority Element
查看>>
去除sql的前后半角全角空格
查看>>
图片在容器里水平垂直居中
查看>>