首页 > 其他 > 详细

查询CLOB字段

时间:2020-06-30 19:55:06      阅读:49      评论:0      收藏:0      [点我收藏+]

有时工作中会用到wm_concat列转行的函数,但是从10205之后,其返回结果为CLOB类型,在PL/SQL developer中显示为这样:

技术分享图片

但是在sqlplus中显示正常:

SQL> SELECT wm_concat(column_name) FROM t1 GROUP BY table_name;

WM_CONCAT(COLUMN_NAME)
--------------------------------------------------------------------------------
ENAME,COMM,SAL,JOB
DEPTNO,LOC,DNAME
EMPNO,DEPTNO,COMM,SAL,HIREDATE,MGR,JOB,ENAME
GRADE,HISAL,LOSAL
1
2
3
4
5
6
7
8
此时可以使用dbms_lob函数:

技术分享图片
另:
在11GR2中,使用listagg()函数代替wm_concat(),可以提高效率;而且listagg()还可以作为分析函数使用,添加over子句。

SELECT deptno,dbms_lob.substr(wm_concat(ename))
FROM scott.emp a
GROUP BY deptno;

SELECT deptno,listagg(ename,‘,‘) WITHIN GROUP (ORDER BY ename)
FROM scott.emp a
GROUP BY deptno;

SELECT DISTINCT deptno,listagg(ename,‘,‘) WITHIN GROUP (ORDER BY ename) OVER (PARTITION BY deptno)
FROM scott.emp a;

  

原文链接:https://blog.csdn.net/m0_37933891/java/article/details/71057020

查询CLOB字段

原文:https://www.cnblogs.com/vinsonLu/p/13215309.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!