oracle 怎样实现合并相同行 希望是 一条语句

ggyyss_001 2008-02-23 11:13:16
oracle 怎样实现合并相同行 希望是一条语句

create table tb
(
id number,
name varchar2(100)
);
insert into tb values(1,'aa');
insert into tb values(2,'bb');
insert into tb values(3,'cc');
insert into tb values(1,'dd');
insert into tb values(1,'ee');

实现
1 aa,dd,ee
2 bb
3 cc
...全文
216 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
codearts 2008-02-25
  • 打赏
  • 举报
回复
create or replace function t_f                                                                    
(
v_id number
)
return varchar2
is
result varchar2(5000);
begin
result := '';
for x in (select name from tb where id = v_id)
loop
result := result || x.name || ',';
end loop;

result := substr(result, 1, length(result) - 1);
return result;
end t_f;



select id, t_f(id) as name from (select distinct id from tb) x

hebo2005 2008-02-23
  • 打赏
  • 举报
回复
一条语句不太可能,写个函数或者存储过程可以实现

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧