有没有字符串的sum函数可以拼接组内某字符字段

有没有字符串的sum函数可以拼接组内某字符字段
有没有字符串的sum函数可以group by之后吧某个字段都拼接起来 类似于 select sum(char_field) from T group by A_field
参与11

7同行回答

shadowflareshadowflare软件开发工程师交通银行
9.7.4以上版本,使用新加入的listagg函数。V9以上版本,利用xmlagg或者xquery中的string-join函数。V8版本,利用with(CTE表达式)写递归拼接字符串。显示全部

9.7.4以上版本,使用新加入的listagg函数。

V9以上版本,利用xmlagg或者xquery中的string-join函数。

V8版本,利用with(CTE表达式)写递归拼接字符串。

收起
银行 · 2016-04-25
浏览2075
wangyaxwangyax软件开发工程师金融机构
该函数是9.7以上才有的功能,而且涉及到字符串排序才能保证结果一致性,因为性能会有一些影响。显示全部

该函数是9.7以上才有的功能,而且涉及到字符串排序才能保证结果一致性,因为性能会有一些影响。

收起
互联网服务 · 2015-11-27
浏览2072
mjg_db2mjg_db2软件开发工程师abc
SELECT  a.EMPNO,replace(replace(xml2clob(xmlagg(xmlelement(NAME a, lastname||\',\'))),\'\',\'\'),\'\',\'\') AS CUST_ID FROM emp a group by EMPNO;找到这种方式,可以实现。显示全部

SELECT  a.EMPNO,replace(replace(xml2clob(xmlagg(xmlelement(NAME a, lastname||\',\'))),\'\',\'\'),\'\',\'\') AS CUST_ID FROM emp a group by EMPNO;

找到这种方式,可以实现。

收起
互联网服务 · 2015-11-06
浏览2090
共同进步共同进步数据库架构师中国金融电子化公司
使用OLAP函数有可能可以显示全部
使用OLAP函数有可能可以收起
软件开发 · 2013-11-29
浏览2037
shaooshaooQA工程师hhh
多谢 学习了 这个好像9.7才有的显示全部
多谢 学习了 这个好像9.7才有的收起
IT其它 · 2013-09-22
浏览2001
ppjava2009ppjava2009系统工程师用友汽车信息科技(上海)有限公司
xmlagg也可以啊,以下为一例:SELECT stno,REPLACE(REPLACE(XML2CLOB(XMLAGG(XMLELEMENT(NAME stno,subname||' '||score||' , '))),''),'') info   FROM (VALUES ('NO01','语文',90) , ('NO01','数学',99) , ('NO01','英语',98) ,       ...显示全部
xmlagg也可以啊,以下为一例:
SELECT stno,REPLACE(REPLACE(XML2CLOB(XMLAGG(XMLELEMENT(NAME stno,subname||' '||score||' , '))),''),'') info
  FROM (VALUES ('NO01','语文',90) , ('NO01','数学',99) , ('NO01','英语',98) ,                                                         
               ('NO02','语文',96),('NO02','数学',95)) AS t(stno,subname,score)
GROUP BY stno;收起
互联网服务 · 2013-09-21
浏览2049
ppjava2009ppjava2009系统工程师用友汽车信息科技(上海)有限公司
listagg就可以啊,以下为一例:SELECT stno,LISTAGG(subname||' '||score,',') WITHIN GROUP(ORDER BY 1) info  FROM (VALUES ('NO01','语文',90) , ('NO01','数学',99) , ('NO01','英语',98) ,               ...显示全部
listagg就可以啊,以下为一例:
SELECT stno,LISTAGG(subname||' '||score,',') WITHIN GROUP(ORDER BY 1) info
  FROM (VALUES ('NO01','语文',90) , ('NO01','数学',99) , ('NO01','英语',98) ,                                                         
               ('NO02','语文',96),('NO02','数学',95)) AS t(stno,subname,score)
GROUP BY stno;收起
互联网服务 · 2013-09-21
浏览2024

提问者

shaoo
QA工程师hhh

相关问题

问题状态

  • 发布时间:2013-09-20
  • 关注会员:4 人
  • 问题浏览:11458
  • 最近回答:2016-04-25
  • X社区推广