这篇文章主要介绍了sql 流水号获取代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
经常用到产生订单号等流水单号的场景,sqlserver实现流水号,如下:
表tb_b_Seq(流水号表):
1
2
3
4
5
6
|
CREATE TABLE tb_b_Seq(
Year int , --年份
Month int , --月份
Attr varchar (50), --属性
Seq int --流水号
)
|
获取流水号,通过存储过程:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
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
|
测试:
1
2
3
|
declare @ret int
exec GetSeq 'Contract' ,2017,10,@ret
print @ret
|
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://www.cnblogs.com/lcawen/p/7660716.html