欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

求指教,这样的语句如何写

更新时间: 2014-01-05 02:11:47 责任编辑: Author_N1

 

求指教,这样的语句怎么写
人员信息表一
人员姓名  人员id
A           1
B           2
C           3
...         ...

查询出来的表2
人员id
1,2,3
1,2
1,3
1
2         (数据出现无顺序)

现在要求把查询出来的表2显示成这样
人员姓名
A,B,C
A,B
A,C
A
B
请问这样的语句该怎么写啊
--参考方法--
引用:
补充一下人员姓名都是汉字



SELECT LTRIM(MAX(SYS_CONNECT_BY_PATH(T3.NAME, ',')), ',') name
  FROM (SELECT ROW_NUMBER() OVER(PARTITION BY T2.RNUM order by 'x') RN,
               T2.RNUM,
               t1.name
          FROM T1 T1,
               (SELECT T.RNUM, REGEXP_SUBSTR(T.id, '[^,]+', 1, LEVEL) STR
                  FROM (SELECT t.id, ROWNUM RNUM FROM T2 T) T
                CONNECT BY LEVEL <=
                           (LENGTH(T.id) - LENGTH(REPLACE(T.id, ',', ''))) /
                           LENGTH(',') + 1
                       AND PRIOR RNUM = RNUM
                       AND PRIOR DBMS_RANDOM.VALUE IS NOT NULL) T2
         WHERE T1.ID = T2.STR) T3
 START WITH T3.RN = 1
CONNECT BY PRIOR RN = RN - 1
       AND PRIOR T3.RNUM = T3.RNUM
 GROUP BY T3.RNUM
 order by t3.rnum;

上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:11:47
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/6806/
本文WWW.DOC100.NET DOC100.NET版权所有。