我尝试使用逗号分隔的行进入列,但是如何使用子查询来实现这一点,我在 oracle 中实现了这一点。
SQL 服务器:
DECLARE @listStr VARCHAR(MAX)
SELECT @listStr = COALESCE(@listStr+',' ,'') + email
FROM RDT_USER
SELECT @listStr
甲骨文:
SELECT RTRIM(XMLAGG(XMLELEMENT(E, EMAIL || ',')).EXTRACT('//text()'), ',') AS RECEIVERID
FROM (SELECT DISTINCT (EMAIL) AS EMAIL
FROM RDT_USER
)
预期输出:
j1@gmail.com,j2@gmail.com,j3@gmail.com,j4@gmail.com