这篇文章主要介绍了sql 流水号获取代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 经常用到产生订单号等流水单号
这篇文章主要介绍了sql 流水号获取代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
经常用到产生订单号等流水单号的场景,sqlserver实现流水号,如下:
表tb_b_Seq(流水号表):
CREATE TABLE tb_b_Seq(
Year int ,--年份
Month int,--月份
Attr varchar(50),--属性
Seq int--流水号
)
获取流水号,通过存储过程:
create Proc GetSeq (
@attr varchar(50),
@year int,
@month int,
@Return int output )
As
set @Return=(select top 1 Seq from tb_b_Seq where Attr=@attr and MONTH=@month and YEAR=@year)
if(@Return is null)
begin
set @Return=1
insert into FMDS_tb_b_Seq (Attr,Year,Month,Seq) values (@attr,@year,@month,@Return)
end
else
begin
set @Return=@Return+1
update FMDS_tb_b_Seq set Seq=@Return where Attr=@attr and MONTH=@month and YEAR=@year
end
测试:
declare @ret int
exec GetSeq 'Contract',2017,10,@ret
print @ret
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持每日运维。