Concatenate and group multiple rows in Oracle
Posted
by
user1693347
on Stack Overflow
See other posts from Stack Overflow
or by user1693347
Published on 2012-09-24T03:32:47Z
Indexed on
2012/09/24
3:37 UTC
Read the original article
Hit count: 109
Suppose I have a table like this:
NAME GROUP
name1 groupA
name2 groupB
name5 groupC
name4 groupA
name3 groupC
I'd like to have a result like this:
GROUP NAMES
groupA name1,name4
groupB name2
groupC name3,name5
If there were only one column in the table, I could concatenate the records by doing the following, but with grouping in the context, I really don't have much idea. Any suggestion is welcome, thanks in advance!
Concatatenating one column table:
SELECT names
FROM (SELECT SYS_CONNECT_BY_PATH(names,' ') names, level
FROM name_table
START WITH names = (SELECT names FROM name_table WHERE rownum = 1)
CONNECT BY PRIOR names < names
ORDER BY level DESC)
WHERE rownum = 1
© Stack Overflow or respective owner