我有如下表:SQL服務器合併到行單列
SID AttributeID ValueID
120 1 3
120 2 4
120 1 2
120 2 2
我wan't到行具有相同屬性Id結合起來,有這樣的事情:
SID AttributeID ValueID
120 1 3, 2
120 2 4, 2
我曾嘗試STUFF功能,但我得到這個錯誤:
Conversion failed when converting the varchar value ',' to data type int.
查詢(更新後):
SELECT AttributeID,
abc = STUFF((SELECT ',' + CAST(ValueID as varchar(250)) FROM SubjectDetails
WHERE SubjectID=120 FOR XML PATH ('')), 1, 1, '')
FROM SubjectDetails WHERE SubjectID=120 GROUP BY AttributeID
結果:
AttributeID abc
1 3,2,4,2
2 3,2,4,2
鑄造/轉換'ValueID'成基於文本的類型(即'CHAR','VARCHAR'等...) – Kidiskidvogingogin
我認爲它必須可能與int太 – berthos