CREATE function IncNum(@num varchar(100)) returns nvarchar(20) as --将指定串递增 --参数:@num 编号 begin declare @s nvarchar(20), ??????? @s1 nvarchar(20), ??????? @left nvarchar(20), ??????? @right nvarchar(20), ??????? @nextnum nvarchar(50) set @s=@num set @nextnum='' set @s1='' set @left='' set @right='' while len(@s)>0 begin? set @s1=substring(@s,1,1) if @s1 like '[0123456789' ?? set @right=@right+@s1 else ?? set @right='' set @s=stuff(@s,'')? end if @right='' return '' set @right=cast(cast(@right as int)+1 as nvarchar(20)) set @left=left(@num,len(@num)-len(@right)) set @nextnum=@left+@right return @nextnum end
使用: select dbo.IncNum('A001S1')
结果: A001S2
转载地址:http://hi.baidu.com/qdseashore/item/32e947e90618abf6e1a5d452
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|