表air有以下三个字段
id name memo
12 kk_123 备注
13 kk_426 备注2
12 kk_156 备注
现要得到如下结果应该如何做呢?
id name memo
12 kk_123/kk_156 备注
13 kk_426 备注2
1.oracle 10g才能用
select id,replace(wmsys.wm_concat(name),',','/') name,memo from air group by id,memo;
2.select id, memo, ltrim(max(sys_connect_by_path(name, ',')), ',') from
(select row_number() over(partition by table1.id,table1.memo order by name) rn,table1.* from air table1)
start with rn = 1
connect by prior rn = rn - 1 and prior id = id
group by id, memo
order by id
参考http://hi.baidu.com/graceyan/blog/item/6cc3a935e89f748ca71e120f.html