作者:James | 来源:互联网 | 2017-05-12 14:47
最近忙于动态监测软件的开发,处理有关标准宗地编码和区段编码关系,关系如下表所示
现在需要将表中的数据转换为如下表所示结果:
在SQL server数据库中,创建自定义函数,通过游标,将表的数据转化为结果表,函数代码如下所示:
代码如下:
create function combstr(@name nvarchar(50))
returns nvarchar(300)
as
begin
declare @resultStr nvarchar(300)
declare @tempStr nvarchar(500)
declare @flag int
declare myCur cursor --定义游标
For(select landCode from land where sectCode=@name )
open myCur –-打开游标
fetch next from myCur into tempStr –将游标下移
set @flag=0
while @@fetch_status=0
begin
if @flag=0
begin
set @resultStr=@tempStr
end
else
begin
set @resultStr=@resultStr+','+@tempStr
end
set @flag=@flag+1
fetch next from myCur into @tempStr
end
close myCur
deallocate myCur
return @result
end