一.首先解释一下可能会查询的基础问题:

1.1db2 “with ur”是什么意思:

在DB2中,共有四种隔离级:RS,RR,CS,UR.以下对四种隔离级进行一些描述,同时附上个人做试验的结果。隔离级是影响加锁策略的重要环节,它直接影响加锁的范围及锁的持续时间。两个应用程序即使执行的相同的操作,也可能由于选择的隔离级的不同而造成加锁的结果不同。

1.2查看连接db2数据库的版本:

命令查看: 用db2level 查看

1.3在db2中会有''字符串和null的区分

1.4声明一下这个开发时基于https://www.csdn.net/gather_2d/MtTaAg5sODY1My1ibG9n.html这个网页里的数据的

WITH
emp(deptno,job,telephone) AS(
SELECT * FROM (
VALUES (10,'persident','apple'),(30,'manager','orange'),(10,'persident','orange'),(20,'anayst','apple'),(30,'clerk','apple'),(20,'manager','orange')
,(20,'clerk','apple'),(10,'manager',null),(30,'sakesman','apple'),(10,'manager',''))
)
,fld(deptno,job,telephone) AS (
SELECT
deptno,
decode(row_number() over(PARTITION BY deptno,job),1,job) job,
decode(row_number() over(PARTITION BY deptno,telephone),1,telephone) telephone
FROM emp
)
SELECT
deptno,
listagg(job,',') within GROUP (ORDER BY job DESC ) jobs,
listagg(telephone,',') within GROUP (ORDER BY telephone) telephones
FROM fld
GROUP BY dep

整个过程我们可以看到''字符串是作为一个字符来传递的,而null值则是被过滤掉了。由于db2服务器版本过低,所以不能使用distinct进行拼接的过滤,只能使用11版本以前的函数进行开发测试,后续继续补充

关于db2中listagg函数开发中的体验的更多相关文章

  1. java基础课程笔记 static 主函数 静态工具类 classpath java文档注释 静态代码块 对象初始化过程 设计模式 继承 子父类中的函数 继承中的构造函数 对象转型 多态 封装 抽象类 final 接口 包 jar包

    Static那些事儿 Static关键字 被static修饰的变量成为静态变量(类变量) 作用:是一个修饰符,用于修饰成员(成员变量,成员方法) 1.被static修饰后的成员变量只有一份 2.当成员 ...

  2. iOS --- [持续更新中] iOS移动开发中的优质资源

    在我们做iOS APP的开发过程中, 须要非常多设计, 产品, 技术, 运营等方面的技巧和资源. 现将其整理汇总, 本文会一直持续更新. 敬请关注. 设计 Dribbble Dribbble是一个面向 ...

  3. TCP连接中time_wait在开发中的影响-搜人以鱼不如授之以渔

    根据TCP协议定义的3次握手断开连接规定,发起socket主动关闭的一方socket将进入TIME_WAIT状态,TIME_WAIT状态将持续2个MSL(Max Segment Lifetime),T ...

  4. 关于numpy中的函数return中加入字符串类型数据后,小数点精度变化

    weekdays.pyimport numpy as npfrom datetime import datetimedef datestr2num(s): return datetime.strpti ...

  5. Spring 5 中函数式web开发中的swagger文档

    Spring 5 中一个非常重要的更新就是增加了响应式web开发WebFlux,并且推荐使用函数式风格(RouterFunction和 HandlerFunction)来开发WebFlux.对于之前主 ...

  6. [Python]Python Class 中的 函数定义中的 self

    In [80]: class MyClass001: ....: def selfDemo(self): ....: print 'My Demo' ....: In [81]: p = MyClas ...

  7. shell中的函数 shell中的数组 告警系统需求分析

     

  8. React在开发中的常用结构以及功能详解

    一.React什么算法,什么虚拟DOM,什么核心内容网上一大堆,请自行google. 但是能把算法说清楚,虚拟DOM说清楚的聊聊无几.对开发又没卵用,还不如来点干货看看咋用. 二.结构如下: impo ...

  9. 在MySQL的InnoDB存储引擎中count(*)函数的优化

    写这篇文章之前已经看过了很多数据库方面的优化内容,大部分都是加索引.使用事务.要什么select什么等等.然而,只是停留在阅读的层面上,很少有实践,因为没有遇到真实的项目,一切都是纸上谈兵.实践是检验 ...

随机推荐

  1. 解决Ubuntu19.04无法安装SecureCRT

    推荐下载SecureCRT的tar包 在ubuntu19.04上安装SecureCRT的时候,报错libssl1.0.0-xxx没有安装 解决办法:下载并安装libssl1.0.0_1.0.1t-1+ ...

  2. java中int 和String相互转换

    一.String转为int int i=Integer.parseInt(string):int i=Integer.valueOf(s).intValue(); 二.int转为String Stri ...

  3. Hadoop namenode连接journalnode限制导致集群启动失败

    错误1:刚搭建的新集群,启动journalnode以后,格式化namenode节点,出现如下错误 注意其中划红线的地方. 出现这个错误的原因是journalnode节点还没有准备好,而namenode ...

  4. 利用layer制作好看的弹出框

    一.下载layer http://layer.layui.com/ 二.效果图 三.代码 <!DOCTYPE html> <html lang="en"> ...

  5. tab切换里面做轮播图

    这里的轮播图有三页,并且每页的数据有8个,只能将23个数据分割开来,这里要实现5个tab用一个轮播图 <div class="report_detail_class"> ...

  6. [Ubuntu] sudo apt-get update指令执行失败

    系统:Ubuntu 16.04 LTS 安装软件前执行 sudo apt-get update 更新,但是提示失败如下: 网上搜索后,因为连接不到 US 的服务器,所以更新失败,需要在系统设置中将源服 ...

  7. 性能测试工具gperftools使用

    https://blog.csdn.net/10km/article/details/83820080 https://blog.51cto.com/wulingdong/2043898 https: ...

  8. maven手动将jar包导入到本地仓库(支持多个仓库选择)

    正常我们在用maven搭建项目时,我们只需要将项目所需要的依赖配置到maven的配置文件pom.xml中即可,maven就可以去网上将jar包下载到配置的本地仓库中去.所以一般情况下我们是不需要手动安 ...

  9. iOS12 中的后台下载与上传

    严格意义上来说,iOS并不能像Android一样,真的在后台开启一个下载Service,一直下载.但是它可以进行在系统允许范围内的后台上传和下载. 当使用 NSURLSessionConfigurat ...

  10. Mac升级Node.js和npm到最新版本指令

    一.查看本机当前Node.js和npm版本 node -v npm -v 二.清除node.js的cache sudo npm cache clean -f 三.安装"n"版本管理 ...