多行记录合并到一个单元格
时间:2011-11-11
来源:互联网
有这样一个问题
假如A表和B表关联 A.no=B.no
然后得到的结果是
no text
1 'aa'
1 'bb'
我想将这两个结果拼成一个结果
就是说
得到
no text
1 'aa'+'bb'
其中还有+号,如何办
作者: jjx0224 发布时间: 2011-11-11
select a.no, a.text ||'+'|| b.text from (select 1 as no, 'aa' as text from dual
union
select 2 as no, 'cc' as text from dual) a,
(select 1 as no, 'bb' as text from dual) b
where a.no = b.no
union
select 2 as no, 'cc' as text from dual) a,
(select 1 as no, 'bb' as text from dual) b
where a.no = b.no
作者: yixilan 发布时间: 2011-11-11
SQL code
WITH tb AS (SELECT 1 a,'aa' b FROM dual UNION ALL SELECT 1,'bb' FROM dual ) SELECT a,max(substr(sys_connect_by_path(b,'+'),2)) FROM ( SELECT a,b,row_number()over(PARTITION BY a ORDER BY a) rn FROM tb ) START WITH rn=1 CONNECT BY rn-1= PRIOR rn AND a=PRIOR a GROUP BY a --result: 1 aa+bb
作者: cosio 发布时间: 2011-11-11
SQL code
with tb as( select 'A' grade,'XX'name from dual union all select 'A','XY' from dual union all select 'A','YY' from dual union all select 'B','aa' from dual union all select 'B','bb' from dual) select grade,substr(max(sys_connect_by_path(name,';')),2) name from (select grade,name,row_number() over(partition by grade order by name) rn from tb) start with rn=1 connect by rn= prior rn+1 and connect_by_root(grade)=grade group by grade; -- GRADE NAME ----- -------------------------------------------------------------------------------- A XX;XY;YY B aa;bb -- 10g的实现: with t as( select 'A' grade,'XX'name from dual union all select 'A','XY' from dual union all select 'A','YY' from dual union all select 'B','aa' from dual union all select 'B','bb' from dual) select grade,wmsys.wm_concat(name) name from t group by grade; -- GRADE NAME ----- -------------------------------------------------------------------------------- A XX,XY,YY B aa,bb
作者: dawugui 发布时间: 2011-11-11
select no, replace(wm_concat(text),',','+') from table_name group by no
作者: summer353 发布时间: 2011-11-11
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28