最近遇到一个问题,就是要把表中的多个字段合并为一个字段显示,比如表结构如下:
而我想显示的格式为:
下面是我的实现方法,水平不足之处,还请指点。
create table #temp(
id int not null,
StudentInfo nvarchar(max) null
)
declare @i int
declare @Info nvarchar(max)
declare @Count int
select @Count =count(ID) from tablename
set @i=@Count
set @Info=''
while(@i>=1)
Begin
insert into #temp select id, '学生'+CONVERT(varchar(2),id)+' '+'姓名:'+Name as StudentInfo from [TestDB].[dbo].[CountTest] where ID=@i
select @Info=(StudentInfo+char(13)+@Info) from #temp where id=@i order by id asc
set @i=@i-1
End
select top 1 ID,@Info as StudentInfo from [TestDB].[dbo].[CountTest]
drop table #temp