SQL生成按月的自动编号

原创 2015年07月09日 16:44:49
CREATE PROCEDURE [dbo].[Select_NO]
(
   @UserId char(12)
 )
AS
SET NOCOUNT ON
declare @maxNO char(6),
@newNo int,
@yearMonth char(6),
@resultNo char(12)

--取当前年月YYYYMM
select @yearMonth = convert(nvarchar(6),getdate(),112) --'YYYYMM’

if not exists(select autoid from Orders where convert(nvarchar(6),OrdDate,112) = @yearMonth and UserID = @UserId)
begin
  select @resultNo = @yearMonth + '000001' 
end
else
begin
--取本月最大值
select @maxNO = substring(MAX(ordNO),7,6) from Orders where convert(nvarchar(6),OrdDate,112) = @yearMonth  and UserID = @UserId
--本月最大值加1
select @newno = convert(int,@maxNO) + 1
select @resultNo = @yearMonth + SUBSTRING('000000',1,6-len(@newno)) + CONVERT(varchar(6),@newno)
end


select @resultNo




if @@error > 0 
  return @@error
else
  return -1

相关文章推荐

SQL按月分组.txt

  • 2010年11月20日 15:51
  • 1KB
  • 下载

ORACLE表自动按月分区步骤

  • 2017年08月22日 11:33
  • 62KB
  • 下载

oracle的按月统计sql(一个数据库面试题)

原文地址:oracle的按月统计sql(一个数据库面试题) 题目:   两个数据库表,schema如下:   CREATE TABLE REG_USERS (   I...

自动生成编号【sql】

  • 2010年01月25日 17:00
  • 826B
  • 下载

Jquery按月生成日历排班.zip

  • 2016年09月12日 08:34
  • 34KB
  • 下载

SQL SERVER 如何按月创建表分区?

SQL SERVER 如何按月创建表分区

SQL按月统计

做统计就要和时间打交道。。。  一:当前年的月统计 select b.number as [Month], sum(a.A4012) shouru,SUM(a.A4011) feiyong,sum...

【原创】sql 按月统计,并调用zedgraph绘制

【原创】sql 按月统计,并调用zedgraph绘制 Author: chad Mail: linczone@163.com Try Dim AC As New Ac...

SQL实现分组统计查询(按月、小时分组)

转自http://www.cnblogs.com/oec2003/archive/2009/06/04/1496541.html   首先创建数据表 Create table Counter...

sql语句分别按日,按周,按月,按季统计金额

sql语句分别按日,按周,按月,按季统计金额如: 表:consume_record 字段:consume (money类型) date (datetime类型) 请问怎么写四条sql语句分别按日,按周...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQL生成按月的自动编号
举报原因:
原因补充:

(最多只允许输入30个字)