此查询如何创建逗号分隔列表SQL Server?我在Google的帮助下编写了这个查询,以便从一个表中创建一个分隔列表,但是我没有理解这个查询中的任何内容。有人能解释一下发生了什么吗 SELECT
E1.deptno,
allemp = Replace ((SELECT E2.ename AS 'data()'
FROM emp AS e2
WHERE e1.deptno = e2.DEPTNO
FOR xml PATH('')), ' ', ', ')
FROM EMP AS e1
GROUP BY DEPTNO;给我结果10 CLARK, KING, MILLER20 SMITH, JONES, SCOTT, ADAMS, FORD30 ALLEN, WARD, MARTIN, BLAKE, TURNER, JAMES
3 回答
ibeautiful
TA贡献1993条经验 获得超5个赞
步骤1:
SELECT E2.ename AS 'data()' FROM emp AS e2 WHERE e2.DEPTNO = 10FOR XML PATH('')
CLARK KING MILLER
步骤2:
REPLACE
,
CLARK, KING, MILLER
步骤3:
deptno
繁星淼淼
TA贡献1775条经验 获得超11个赞
SQLServer 2017STRING_AGG
SELECT E1.deptno, STRING_AGG(E1.ename, ', ') AS allempFROM EMP AS e1 GROUP BY DEPTNO;
注STRING_SPLIT
添加回答
举报
0/150
提交
取消