每次做系统,客户都会要求对订单编号进行自动生成,这也是经常所用到的。
一般都是日期+流水号
例如:201103060001或是2011030601
下面是生成2011030601的存储过程,可根据实际情况进行修改即可。
create proc makeOrderNo
as
declare @newOrderNo varchar(20)
select @newOrderNo =(
select top 1 orderId
from [order]
where convert(varchar(8),getdate(),112)=left(orderId,8)
order by orderId desc)
if (@newOrderNo is null)
begin
set @newOrderNo=convert(varchar(8),getdate(),112)+'01'
end
else
begin
set @newOrderNo=convert(varchar(20),(convert(int,@newOrderNo)+1))
end
select @newOrderNo