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;  

  • 相关阅读:
    基本的CRUD操作
    java.lang.IllegalStateException: Cannot forward after response has been committed的一个情况解决方法
    一个解决过程:Servlet [某路径xxx] in web application [/项目xxx] threw load() exception和java.lang.ClassNotFoundException XXX
    卸载时候出现: windows installer 程序有问题。此安装需要的dll不能运行 的一个解决方法
    jdk各版本特性
    抽象类与接口
    Integert 与 int例子详解
    Spring(mvc)思维导图
    关于存储数组有序无序
    遍历回顾(手稿)-先序中序求后序----和----中序后序求先序
  • 原文地址:https://www.cnblogs.com/zengtianli/p/8625318.html
Copyright © 2011-2022 走看看