zoukankan      html  css  js  c++  java
  • 获得每天的日期流水 函数

    --获得每天的日期流水(20160507001)
    CREATE FUNCTION [dbo].[f_GetDateFlowNo]
        (
          ---日期流水(20160507001)
          @dateFlowNo VARCHAR(30) ,
          --流水长度len(0001)
          @noLen BIGINT ,
          @showtype VARCHAR(8) --yymmdd,yyyymmdd,yymm,yyyymm
        )
    RETURNS VARCHAR(30)
    AS
        BEGIN
            --定义当天字符串
            DECLARE @DateStr VARCHAR(10);
            --定义序号字符串
            DECLARE @No VARCHAR(20);
            --得到序号No字符串
            DECLARE @NoStr VARCHAR(20)= '00000000000000000000';
            SET @showtype=LOWER(@showtype) ; 
            SET @DateStr = CASE WHEN @showtype = 'yyyymmdd'
                                THEN CONVERT(VARCHAR(8), GETDATE(), 112)
                                WHEN @showtype = 'yymmdd'
                                THEN CONVERT(VARCHAR(6), GETDATE(), 12)
                                WHEN @showtype = 'yymm'
                                THEN CONVERT(VARCHAR(4), GETDATE(), 12)
                                WHEN @showtype = 'yyyymm'
                                THEN CONVERT(VARCHAR(6), GETDATE(), 112)
                                ELSE CONVERT(VARCHAR(8), GETDATE(), 112)
                           END
           
            --判断传入的字符串是否为''
            IF ISNULL(@dateFlowNo, '') = ''
                BEGIN
                    SET @dateFlowNo = @DateStr + RIGHT(@NoStr + '1', @noLen); 
                END;
            ELSE
                BEGIN
                    --去到当前序号+1
                    SET @No = CAST(CAST(REPLACE(@dateFlowNo, @DateStr, '') AS BIGINT)
                        + 1 AS VARCHAR(20));
                    --判断长度是否超过序号最大字符串(不超过补)
                    IF LEN(@No) < @noLen
                        BEGIN
                            SET @No = RIGHT(@NoStr + @No, @noLen);
                        END;
                    --返回值赋值                       
                    SET @dateFlowNo = @DateStr + @No;
                END;
            RETURN @dateFlowNo;

        END;  

  • 相关阅读:
    命令行中邮件的收发
    关于location对象
    正则表达式
    一家初创公司的 CTO 应当做什么?
    移动数据网络质量的国家奖牌榜
    MFQ&PPDCS测试分析和测试设计框架l学习记录
    Python学习笔记之基本语法学习1
    《用Python做HTTP接口测试》学习感悟
    我的中台的理解
    中台与平台的区别
  • 原文地址:https://www.cnblogs.com/zengtianli/p/8625318.html
Copyright © 2011-2022 走看看