SQLServer2000常用函数大全(经典)

源代码在线查看: 3.4.2 分段更新函数.sql

软件大小: 285 K
上传用户: xiaomaolv1017
关键词: SQLServer 2000 函数
下载地址: 免注册下载 普通下载 VIP

相关代码

				if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[f_SetStr]') and xtype in (N'FN', N'IF', N'TF'))
				drop function [dbo].[f_SetStr]
				GO
				
				--分段截取函数
				CREATE FUNCTION dbo.f_SetStr(
				@s varchar(8000),      --包含数据项的字符串
				@pos int,             --要更新的数据项的段
				@value varchar(100),   --更新后的值
				@split varchar(10)     --数据分隔符
				)RETURNS varchar(8000)
				AS
				BEGIN
					DECLARE @splitlen int,@p1 int,@p2 int
					SELECT @splitlen=LEN(@split+'a')-2,
						@p1=1,
						@p2=CHARINDEX(@split,@s+@split)
					WHILE @pos>1 AND @p1						SELECT @pos=@pos-1,
							@p1=@p2+@splitlen+1,
							@p2=CHARINDEX(@split,@s+@split,@p1)
					RETURN(CASE
						WHEN @p1						WHEN @p2>LEN(@s) THEN @s+@value
						WHEN @p2=@p1 THEN STUFF(@s,@p1,0,@value) 
						ELSE @s END)
				END
				GO
							

相关资源