mssql sqlserver 采用left right关键字 生成业务单号的方法


摘要:
在ERP系统中,我们一定会接触到生成业务系统单据编号,
通常我们会在数据库中存放业务单据编号规则
—————————————-
left right 关键字可以自动补齐单据编号


例:

    
 /*
当前流水编号为5 
生成一个年份为4为 月份为2为
流水好占用6位
生成最少12的流水号
*/

declare @thisNumber varchar(20)
declare @yearInfo varchar(4)
declare @monthInfo varchar(2)
set @thisNumber ='15'
set @yearInfo ='2018'
set @monthInfo ='02'

declare @tmp varchar(30)
set @tmp ='000000'

---生成流水号占用符方法
if len(@thisNumber)<6
begin
 ---set @tmp = left(@tmp,6-len(@thisNumber))+@thisNumber
 ---或
 ---set @tmp = right(@tmp,6-len(@thisNumber))+@thisNumber
 ---或
 set @tmp = right(@tmp+@thisNumber,6)
end
else
begin
set @tmp =''
end

set @thisNumber = @yearInfo+@monthInfo+@tmp

print '生成单据编号如下:'
print @thisNumber