Oracle:将子查询中的多个结果合并为一个以逗号分隔的值

Jas*_*hen 9 sql oracle subquery string-aggregation

我正在尝试将单列VARCHAR圆形查询转换为命令分隔的值列表.

这与此问题完全相同,但对于Oracle而不是SQL Server或MySQL.

Jus*_*ave 13

Tim Hall网站上提供可用的字符串聚合技术的完美摘要.


Jas*_*hen 5

我发现这似乎有效。想法?

SELECT SUBSTR (c, 2) concatenated
  FROM (SELECT     SYS_CONNECT_BY_PATH ( myfield, ',') c, r
              FROM (SELECT   ROWNUM ID, myfield,
                             RANK () OVER (ORDER BY ROWID DESC) r
                        FROM mytable
                    ORDER BY myfield)
        START WITH ID = 1
        CONNECT BY PRIOR ID = ID - 1)
 WHERE r = 1;
Run Code Online (Sandbox Code Playgroud)