declare @str varchar(1000)
select @str=''
select @str=@str+','+cast(id as varchar) from mytable where name='AAAAAAAA'
select @str=right(@str,len(@str)-1)
select @str=''
select @str=@str+','+cast(id as varchar) from mytable where name='AAAAAAAA'
select @str=right(@str,len(@str)-1)
create function getstr(@id Nchar(10))
returns Nvarchar(2000)
as
begin
declare @str Nvarchar(2000)
set @str=N''
select @str=@str+N','+cast(id as varchar) from mytable
where name=@id
set @str=right(@str,len(@str)-1)
return @str
end
------
select dbo.getstr(name) from table
你要的结果是类似这样吧,
a b c 1,2,3
aa bb cc 3,2,5
如果你的表之间有关联字段那么可以
select A.*,dbo.getstr(B.Name) from a left outer join B on A.关联字段=B.关联字段
用select dbo.getstr('AAAAAAAA')就可以了
create function getstr(@id Nchar(10))
returns Nvarchar(2000)
as
begin
declare @str Nvarchar(2000)
set @str=N''
select @str=@str+N','+cast(id as varchar) from mytable
where name=@id
set @str=right(@str,len(@str)-1)
return @str
end
------你有没有看这个自定义函数,我真的要被你搞晕了。