我有以下输出用于我的 sql 查询以从 oracle 表中获取用户详细信息
Select distinct userid from Scope1
USERID
Rakesh
Admin
我希望输出如下所示,以便我可以更轻松地进行查询。请帮我。
USERID
'Rakesh','Admin'
谢谢
我有以下输出用于我的 sql 查询以从 oracle 表中获取用户详细信息
Select distinct userid from Scope1
USERID
Rakesh
Admin
我希望输出如下所示,以便我可以更轻松地进行查询。请帮我。
USERID
'Rakesh','Admin'
谢谢
下面的查询选择逗号分隔格式的数据:
SELECT
RTRIM (XMLAGG (XMLELEMENT (E, userid || ',')).EXTRACT ('//text()'), ',') AS UserID
FROM Scope1 ;
使用 wm_concat 怎么样:
SELECT wm_concat(''''||userid||'''') FROM Scope1;
看一下内置的 LISTAGG 函数:
http://docs.oracle.com/cd/E14072_01/server.112/e10592/functions087.htm
您需要一个在查询中执行循环的函数。该函数将返回您需要的数据的逗号分隔值。就像是:
str1 := '';
for rec in (select distinct userid from Scope1)
loop
str1 := str1 || rec.userid || ', ';
end loop;
str1 := substr(str1, 1, length(str1) - 2);