一个自定义函数返回表结构的错误
CREATE FUNCTION p_split
(@c varchar(2000),@split varchar(20))
return table
as
declare @t table(CCC varchar(20))
begin
while(charindex(@split,@c) <> 0)
begin
insert @t(CCC) values (substring(@c,1,charindex(@split,@c)-1))
set @c = stuff(@c,1,charindex(@split,@c), ' ') -- 删除指定长度的字符并在指定的起始点插入另一组字符
end
insert @t(CCC) values (@c) ---最后一个不含分隔的加进来
return (select * from @t)
end
从网上找个存储过程,想转成自定义函数 ,可是生成的时候老是错误,不知道为何,错误提示如下,请帮我看看```
------解决方案--------------------CREATE FUNCTION p_split
(@c varchar(2000),@split varchar(20))
returns @t table(CCC varchar(20))
as
begin
while(charindex(@split,@c) <> 0)
begin
insert @t(CCC) values (substring(@c,1,charindex(@split,@c)-1))
set @c = stuff(@c,1,charindex(@split,@c), ' ') -- 删除指定长度的字符并在指定的起始点插入另一组字符
end
insert @t(CCC) values (@c) ---最后一个不含分隔的加进来
return
end
GO
--調用
Select * From dbo.p_split( '1.2.3 ', '. ')
------解决方案--------------------你看下聯機幫助的CREATE FUNCTION
返回是表變量的時候,return那裡特殊一些。
點帖子右上角的“管理”,你就知道怎麼給分了。