我想将多个列更新为另一个表的一列: 我正在使用MS SQl Server
表1:
Num | ColumnA | ColumnB |
--------------------------
1 | Peter | Mueller |
1 | Jonny | Corleone |
2 | John | Cohn |
1 | Sarah | Wood |
现在我想将ColumnA和ColumnB更新为Table2的ColumA,如下所示:
表2:
Num | ColumnC |
----------------------------------------------------
1 | Peter, Mueller, Jonny, Corleone, Sarah, Wood |
2 | John, Cohn |
答案 0 :(得分:2)
在单个列中存储多个值不是一个好习惯。如果你需要这样做,那么试试这个:
SELECT adress,
num,
Stuff((SELECT ',' + ColumnA + ',' + ColumnB
FROM table1 a
WHERE a.Num = b.Num
FOR xml path('')), 1, 1, '')
FROM table1 b
GROUP BY num