加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

利用SQLServer用户自定义函数实现编号自增长

发布时间:2020-12-12 14:27:29 所属栏目:MsSql教程 来源:网络整理
导读: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(

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读