
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
@H_419_2@ 总结以上是内存溢出为你收集整理的利用SQLServer用户自定义函数实现编号自增长全部内容,希望文章能够帮你解决利用SQLServer用户自定义函数实现编号自增长所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)