1.Oracle中的wm_concat()函数
wm_concat()函数是oracle中独有的,mysql中有一个group_concat()函数。
这两个函数的作用是相同的,它们的功能是:实现行转列功能,即将查询出的某一列值使用逗号进行隔开拼接,成为一条数据。
该函数,在oracle 10G以下版本是没有的
用法:
表名:test
id names num
1 香蕉 3
2 苹果 2
3 葡萄 5
1 橘子 4
3 西瓜 6
想要实现的方式为:
id names
1 香蕉(3斤),橘子(4斤)
2 苹果(2斤)
3 葡萄(5斤),西瓜(6斤)
使用oracle的wm_concat(column)函数实现
select id,wm_concat(names || '(' || num ||'斤)')names from test group by id;
运行后的返回结果根据oracle的版本不同而会字段类型不同,在oracle11g中返回clob型,在oracle10g中返回varchar型通用版本语句
select id,to_char(wm_concat(names))names from test group by id;
select id,to_char((wm_concat(names || '(' || num ||'斤)'))names from test group by id;