有一个 sql,例如如下所示,导致某些行具有一个值。我搜索与 SELECT * FROM some_sql 不同的 sql,这会导致一行包含逗号分隔值。
WITH some_sql AS (
SELECT 1 FROM DUAL
UNION
SELECT 2 FROM DUAL
)
SELECT * FROM some_sql
此 SQL 产生值为 1 和 2 的两行。我搜索了一个 SQl,结果为 1,2,而没有更改“some_sql”的代码。
Sice 您在 11G 上,您可以使用LISTAGG
WITH some_sql AS (
SELECT 1 x FROM DUAL
UNION
SELECT 2 x FROM DUAL
)
SELECT LISTAGG(x, ',') WITHIN GROUP(ORDER BY x) FROM some_sql