Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
TSQL将行更改为合并列_Tsql_Merge - Fatal编程技术网

TSQL将行更改为合并列

TSQL将行更改为合并列,tsql,merge,Tsql,Merge,我有一个表,试图从中将行合并为一列 有办法做到这一点吗?理想情况下,我希望成为ale,将此脚本连接到另一个脚本 我需要合并的列是基于ActionRef的有效查找。我附上了一个样本数据的图像 SELECT ID, ResultId, SyncDate, JobNo, ActionRef, ActionStatus, DateFirRiskIdentified, AssessNo, ActionDueDate, DescFirRiskRequired, SignificantFindi

我有一个表,试图从中将行合并为一列

有办法做到这一点吗?理想情况下,我希望成为ale,将此脚本连接到另一个脚本

我需要合并的列是基于ActionRef的有效查找。我附上了一个样本数据的图像

SELECT        ID, ResultId, SyncDate, JobNo, ActionRef, ActionStatus, DateFirRiskIdentified, AssessNo, ActionDueDate, DescFirRiskRequired, SignificantFindings, PriorityRisk, FirRiskInternalExternal, AreaLocRisk, 
                         FloorFirRisk, AddLocRiskInfo, FurtherControlReq, Officer
FROM            CYHSQL01.TM_FireRiskAssessment.dbo.ActionRequired


提前感谢您的帮助。

关于您的下一个问题:请不要发布图片

最好的是MCVE。在这种情况下,我这样做是为了你。请尝试为下一次设置这样的测试场景。目标是获得一个独立的样本,用您自己的尝试和预期结果再现您的问题:

DECLARE @mockupTable TABLE(ActionRef VARCHAR(100),SignificantFindings VARCHAR(1000));
INSERT INTO @mockupTable VALUES('AR1','Finding ar1.1')
                              ,('AR1','Finding ar1.2')
                              ,('AR2','Finding ar2.1');

SELECT ar.ActionRef
      ,STUFF(
       (
        SELECT CONCAT(', ', ar2.SignificantFindings)
        FROM @mockupTable ar2
        WHERE ar2.ActionRef=ar.ActionRef
        FOR XML PATH(''),TYPE).value('.','nvarchar(max)'),1,2,'') AS ConcatenatedFindings
FROM @mockupTable ar
GROUP BY ar.ActionRef;
从v2017+开始,有
STRING\u AGG()

使用您自己的表名,这将接近以下内容:

SELECT ar.ActionRef
      ,STUFF(
       (
        SELECT CONCAT(', ', ar2.SignificantFindings)
        FROM CYHSQL01.TM_FireRiskAssessment.dbo.ActionRequired ar2
        WHERE ar2.ActionRef=ar.ActionRef
        FOR XML PATH(''),TYPE).value('.','nvarchar(max)'),1,2,'') AS ConcatenatedFindings
FROM CYHSQL01.TM_FireRiskAssessment.dbo.ActionRequired ar
GROUP BY ar.ActionRef;

请不要将数据作为图像发布。你请求帮助的志愿者不能使用它。请至少提供表格格式的
文本
,或者(更好的)DDL和DML语句。还请向我们展示格式良好的样本数据的预期结果。非常感谢。请添加一个而不是图片。非常感谢。下次我将避免发布图片。如何将结果添加到此查询中,因为我需要它来连接到另一个查询。@user3306489我无法知道,因为我不知道您的数据和表。如果问题解决了,请通过接受答案并进行投票来结束这个问题,然后开始一个新问题。使用我的mcve并添加其他数据。尝试设置一个独立的样本,如上所述。
SELECT ar.ActionRef
      ,STUFF(
       (
        SELECT CONCAT(', ', ar2.SignificantFindings)
        FROM CYHSQL01.TM_FireRiskAssessment.dbo.ActionRequired ar2
        WHERE ar2.ActionRef=ar.ActionRef
        FOR XML PATH(''),TYPE).value('.','nvarchar(max)'),1,2,'') AS ConcatenatedFindings
FROM CYHSQL01.TM_FireRiskAssessment.dbo.ActionRequired ar
GROUP BY ar.ActionRef;