SQL输出问题

时间:2014-01-27 11:54:59

标签: sql oracle rdbms

我有一个SQL查询,它将获取一些数据。我写了一个程序将数据复制到excel表中。这样做了。

单个事件将有多行。我想获得该数据的整理形式。说事故编号:12345并且为此存在大约10行。 如果我查询这个表,那么得到10行作为输出。对于我有兴趣获取的所有10行,都存在一个列work_info。

incident_no  work_info
12345        this is incident
12345        this is workinfo

所以我的问题是,如果我用事件12345查询这个表,我需要一行只有一行。 即,

incident_no  work_info
12345        this is incident,this is workinfo      

我希望输出应该是这样的。 1行,所有work_info整理为1列。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

如果您使用的是Oracle 11+,listagg应该可以解决问题:

SELECT LISTAGG(work_info, ', ')
         WITHIN GROUP (ORDER BY incident_no) work_infoAgg
  FROM YOURTABLE;

来源:http://docs.oracle.com/cd/E11882_01/server.112/e17118/functions089.htm#SQLRF51487