----原始數據----
select ActivityName+':'+CONVERT(varchar(2), COUNT(*)) AS 退件次數 from FAERejectData WHERE FInstanceID = 'f9c2cc85-c05f-4545-8095-97861d0e2120' GROUP BY ActivityName
查詢結果如下
EQA會簽:1
分析評估:2
責任工程師確認:1
---期望數據----- select STUFF((SELECT ';'+tmp.退件次數 FROM ( select ActivityName+':'+CONVERT(varchar(2), COUNT(*)) AS 退件次數 from FAERejectData WHERE FInstanceID = 'f9c2cc85-c05f-4545-8095-97861d0e2120' GROUP BY ActivityName)tmp where 1= 1 FOR XML PATH('')),1,1,'')
查詢結果:EQA會簽:1;分析評估:2;責任工程師確認:1
二、
---原始數據--- select ActivityName,r.RejectReason from FAERejectData R WHERE FInstanceID = 'f9c2cc85-c05f-4545-8095-97861d0e2120'
查詢結果如下:
EQA會簽 樣品NG
分析評估 資料NG
責任工程師確認 樣品NG
分析評估 NVT內部原因
------期望數據------------------- select ActivityName, items=stuff((select ','+RejectReason from (select distinct ActivityName,RejectReason from
FAERejectData WHERE FInstanceID = 'f9c2cc85-c05f-4545-8095-97861d0e2120') t where ActivityName=s.ActivityName for xml path('')), 1, 1, '') from (select distinct ActivityName,RejectReason from FAERejectData WHERE FInstanceID = 'f9c2cc85-c05f-4545-8095-97861d0e2120') s group by ActivityName
查詢數據如下,3行2列:
EQA會簽 樣品NG
分析評估 NVT內部原因,資料NG
責任工程師確認 樣品NG
----再次合並數據
select STUFF((SELECT ','+tmp.退件原因 FROM (
select ActivityName+':'+stuff((select ';'+RejectReason from (select distinct ActivityName,RejectReason from FAERejectData WHERE FInstanceID = 'f9c2cc85-c05f-4545-8095-97861d0e2120') t
where ActivityName=s.ActivityName for xml path('')), 1, 1, '') as 退件原因
from (select distinct ActivityName,RejectReason from FAERejectData WHERE FInstanceID = 'f9c2cc85-c05f-4545-8095-97861d0e2120') s
group by ActivityName)tmp where 1= 1 FOR XML PATH('')),1,1,'')
查詢結果:單行單列
EQA會簽:樣品NG,分析評估:NVT內部原因;資料NG,責任工程師確認:樣品NG