数据库问题烦扰我几天了 帮忙解决吧

number uname score subject
1 wtt 12 chinese
1 wtt 23 math
1 wtt 34 english
2 lt 21 english

通过上面的数据查询得到
number uname score
1 wtt 12,23,34
数据库用的是sql 2005
[b]问题补充:[/b]
函数可以解决 但还是有问题 显示的结果有点问题

建辅助函数

create table t(A char(1), B char(1))
insert into t select 'a','a'
insert into t select 'a','b'

insert into t select 'b','c'
GO

create function f_str(@A char(1))
returns varchar(1000)
as
begin

declare @ret varchar(1000)

set @ret=''

select @ret=@ret+','+B from t where A=@A
set @ret=stuff(@ret,1,1,'')
return @ret

end

GO

select distinct A,B=dbo.f_str(A) from t

GO

/*

A B

a a,b

b c
*/

你用select case 试试
即把uname = 'wtt'的score全部添加到一起