标签: sql oracle
我有一张这样的表
----------- UID | NAME ----------- 1 | 'AAA' 1 | 'BBB' 2 | 'AAA' 3 | 'BBB' 3 | 'CCC' 3 | 'DDD'
我想编写一个查询来显示如下结果:
----------- UID | NAME ----------- 1 | 'AAA','BBB' 2 | 'AAA' 3 | 'BBB','CCC','DDD'
有可能吗?
答案 0 :(得分:0)
oracle11g及以上提供LISTAGG功能:
SELECT uid, LISTAGG(name, ',') WITHIN GROUP (ORDER BY name) FROM my_table GROUP BY uid