求一SQL语句

bowlder 2003-01-22 04:47:16
表中数据如下:
ctime name
2002-10 a
2002-10 b
2002-11 c
2002-11 d

能否用一条SQL分组得到如下的结果
ctime name
2002-10 a,b
2002-11 c,d
...全文
32 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
beckhambobo 2003-01-22
  • 打赏
  • 举报
回复
create or replace function get_name(p_date in date) return varchar2 is
Result varchar2(100);

cursor rad_cursor(v_date date) is
select distinct name from table_name
where ctime=v_date;
v_count Number;
begin
v_count:=0;
Result:='';
for v_sor in rad_cursor(p_date) loop
if v_count=0 then
Result:=v_sor.name;
v_count:=v_count+1;
else
Result:=Result||','||v_sor.name;
end if;
end loop;
return(Result);
end get_name;
/

select ctime,get_name(ctime) from table_name group by ctime;
jiezhi 2003-01-22
  • 打赏
  • 举报
回复
写过程处理吧
bowlder 2003-01-22
  • 打赏
  • 举报
回复
实际上就是要将一个组中的字段数据字符串连接起来。
name字段怎样连接都无所谓,只要最终结果包含在一个字段就行。

ctime name
2002-10 a,b,
2002-11 c,d,
2002-12 e,f,g,

17,089

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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