首页 > 开发 > 综合 > 正文

更新字符串列表中,指定位置的字符串

2024-07-21 02:07:50
字体:
来源:转载
供稿:网友

if exists (select * from dbo.sysobjects where id = object_id(n'[dbo].[f_updatestr]') and xtype in (n'fn', n'if', n'tf'))drop function [dbo].[f_updatestr]go

/*--更新字符串列表中,指定位置的字符串

 更新字符串列表中,指定位置的字符串为新的值 如果位置超出范围,则不做更新

--邹建 2004.07--*/

/*--调用示例

 select dbo.f_updatestr('001|002|003|',1,'00a','|')--*/create function f_updatestr(@s varchar(8000),@pos int,@newstr varchar(100),@spliststr varchar(10) --字符串列表的分隔符)returns varchar(8000)asbegin declare @i int,@ilen int

 select @i=charindex(@spliststr,@[email protected])  ,@ilen=len(@spliststr) while @i>0 and @pos>1  select @i=charindex(@spliststr,@s,@i)[email protected]   ,@[email protected] return(case @i when 0 then @s else stuff(@s,@i,charindex(@spliststr,@[email protected],@i)[email protected],@newstr) end)endgo

 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表