本文介绍了如果第一列值相同,则连接第二列值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个如下查询,并列出了它的输出:
I have a query like below and listed output of it:
SELECT DISTINCT TRACKING_NUM,TITLE_OF_DOC_SEC FROM some_table WHERE TRACKING_NUM IS NOT NULL;o/p:
TRACKING_NUM TITLE_OF_DOC_SEC 007 Email Flow 007 Test Bug 53306 007 Title 1119 007 Title Test 007 test bug 009 1156 089 Title 21173 098 test Doc Section我想重新编写查询,以便获得如下输出:
I want to re write the query so that get an output to be like this:
TRACKING_NUM TITLE_OF_DOC_SEC 007 Email Flow,Test Bug 53306,Title 1119,Title Test,test bug 009 1156 089 Title 21173 098 test Doc Section任何人都可以帮忙吗?
推荐答案在11g中使用Listagg()或在10g中使用WM_Concat():
Use Listagg() in 11g or WM_Concat() in 10g:
SELECT LISTAGG(TITLE_OF_DOC_SEC, ',') WITHIN GROUP (ORDER BY TRACKING_NUM) AS TITLE_OF_DOC_SEC FROM your table WHERE.... SELECT WM_CONCAT(TITLE_OF_DOC_SEC) AS TITLE_OF_DOC_SEC FROM your table WHERE....更多推荐
如果第一列值相同,则连接第二列值
发布评论