day5_vm_concat实现字段合并
oracle wm_concat(column)函数使我们经常会使用到的,使用oracle wm_concat(column)函数实现字段合并。
原数据显示:
U_ID GOODS NUM
--------- -------- ----
1 苹果 2
2 梨子 5
1 西瓜 4
3 葡萄 1
3 香蕉 1
1 橘子 3
create table shopping(u_id int,goods varchar2(100),num int);
insert into shopping values(1,'苹果',2);
insert into shopping values(2,'梨子',5);
insert into shopping values(1,'西瓜',4);
insert into shopping values(3,'葡萄',1);
insert into shopping values(3,'香蕉',1);
insert into shopping values(1,'橘子',3);
commit;
想要的结果1:
#########################################
U_ID GOODS_SUM
-------------- -----------------
1 苹果,西瓜,橘子
2 梨子
3 葡萄,香蕉
#########################################
col goods_sum format a20;
select u_id, wm_concat(goods) goods_sum from shopping group by u_id;
想要的结果2:
#########################################
U_ID GOODS_SUM
-------- --------------------------------
1 苹果(2斤),西瓜(4斤),橘子(3斤)
2 梨子(5斤)
3 葡萄(1斤),香蕉(1斤)
#########################################
select u_id, wm_concat(goods || '(' || num || '斤)' ) goods_sum from shopping group by u_id ;