Sql 将行集合转换为具有值列表的列
我需要将行列表转换为单列值 例: 需要转换为Sql 将行集合转换为具有值列表的列,sql,sql-server,Sql,Sql Server,我需要将行列表转换为单列值 例: 需要转换为 ID New Value 1 v1,v2,v3 2 v4,v5,v6,v7 请告诉我如何在SQL server中编写查询 谢谢 SELECT DISTINCT ID, STUFF((SELECT ',' + Value FROM Table T WHERE T.ID = ID FOR XML PATH ('')), 1, 1, '') A
ID New Value
1 v1,v2,v3
2 v4,v5,v6,v7
请告诉我如何在SQL server中编写查询
谢谢
SELECT DISTINCT ID,
STUFF((SELECT ',' + Value
FROM Table T
WHERE T.ID = ID
FOR XML PATH ('')), 1, 1, '') AS [New Value]
FROM Table
GROUP BY ID
我从这里得到的:
我从这里得到的:
@BoratSagdiyev-如果是这样的话,那么我当然会在我的例子中对varchar进行一次角色转换。请指出,如果是另一个问题,那么更多的事情将是错误的。@BoratSagdiyev-如果是这样的话,那么在我的例子中,我当然会对varchar进行转换。如果是另一个问题,请指出更多错误的地方。
SELECT DISTINCT ID,
STUFF((SELECT ',' + Value
FROM Table T
WHERE T.ID = ID
FOR XML PATH ('')), 1, 1, '') AS [New Value]
FROM Table
GROUP BY ID