DECLARE @NAME VARCHAR(800) SELECT ID,@NAME=@NAME+names FROM A where ID=1111
大概是这样吧 create function f_str( @id int )returns varchar(8000) as begin declare @r varchar(8000) set @r='' select @r=@r+','+rtrim(XQDW) from 表 where id =@id return(stuff(@r,1,1,'')) end go
CREATE FUNCTION [dbo].[test] (@id int) RETURNS varchar(500) AS BEGIN declare @string varchar(500) set @string='' select @string=@string+name from A where ID=@id return @string END
select ID,test(id) as names from A where ID=1111
create function f_str( @id int )returns varchar(8000) as begin declare @r varchar(8000) set @r='' select @r=@r+','+rtrim(name) from 表 where id =@id return(stuff(@r,1,1,'')) end go
呵呵,来晚了, didoleo() 的方法应该可以。
这样可以 create function f_str( @id int )returns varchar(8000) as begin declare @r varchar(8000) set @r='' select @r=@r+','+names from a where id =@id return(stuff(@r,1,1,'')) end goselect id,dbo.f_str(id) from a where id=1 group by id
SELECT ID,@NAME=@NAME+names FROM
A where ID=1111
create function f_str(
@id int
)returns varchar(8000)
as
begin
declare @r varchar(8000)
set @r=''
select @r=@r+','+rtrim(XQDW)
from 表 where id =@id
return(stuff(@r,1,1,''))
end
go
我改成NAME后,他说“在TEXT属性的CREATE……语句中指定的名称必须与NAME属性匹配,而且后面必须跟有效的TSQL语句”
RETURNS
varchar(500)
AS
BEGIN
declare @string varchar(500)
set @string=''
select @string=@string+name from A where ID=@id
return @string
END
@id int
)returns varchar(8000)
as
begin
declare @r varchar(8000)
set @r=''
select @r=@r+','+rtrim(name)
from 表 where id =@id
return(stuff(@r,1,1,''))
end
go
create function f_str(
@id int
)returns varchar(8000)
as
begin
declare @r varchar(8000)
set @r=''
select @r=@r+','+names
from a where id =@id
return(stuff(@r,1,1,''))
end
goselect id,dbo.f_str(id) from a where id=1 group by id