2012-11-10 66 views
4

的是兩個表如何更新多行由逗號在SQL Server中分離

table stud 
id name marks1 marks 2 
1  X  3  2 
2  y  4  2 
3  z  5  2 

第二表註釋

comment 

更新自己的評論,在給定的格式螺柱行列列 預期結果

表註釋

comment 
1,X,3,2#2,y,4,2#3,z,5,2 
+2

你有沒有做任何* *爲了這個做自己?如果是這樣,請發佈你有什麼,爲什麼/如何這是錯的。 –

回答

4

SQL Fiddle

MS SQL Server 2008的架構設置

create table stud 
(
    id int, 
    name varchar(10), 
    marks1 int, 
    marks2 int 
) 

create table comment 
(
    comment varchar(max) 
) 

insert into stud values 
(1,  'X',  3,  2), 
(2,  'y',  4,  2), 
(3,  'z',  5,  2) 

查詢1

insert into comment(comment) 
select 
    (
    select '#'+cast(id as varchar(10))+','+ 
      name+','+ 
      cast(marks1 as varchar(10))+','+ 
      cast(marks2 as varchar(10)) 
    from stud 
    for xml path(''), type 
).value('substring((./text())[1], 2)', 'varchar(max)') 

Results

查詢2

select * 
from comment 

Results

|     COMMENT | 
--------------------------- 
| 1,X,3,2#2,y,4,2#3,z,5,2 |