zoukankan      html  css  js  c++  java
  • [原创]SQL 表值函数:获取从今天计算起往前自定义天数

    PS:此博文是利用Windows Live Writer 2012编写,格式效果可能不太好。

    在我开发过程中,遇到一个统计需求,结果是要求返回从当天起往回推算出自定义输入的天数

    为此我写了一个表值函数来解决这一需求。现记录一下,也希望能帮助到一些也遇到此类问题的朋友。

    首先我们看一下执行效果图:

    返回最近十五天的数据,执行调用函数:SELECT * FROM [Fn_RunDay](-15)

    image

    具体函数如下:

    -- =============================================
    -- 调用:SELECT * FROM [Fn_RunDay](-15)
    -- Create date: 2015-01-11
    -- Description:    获取从今天计算起往前 @num 天,返回Table
    -- =============================================
    ALTER FUNCTION [dbo].[Fn_RunDay] (@num INT=-15)
    RETURNS @tab TABLE
        (
         XSDate VARCHAR(10) ,
         Sort INT
        )
    AS
        BEGIN

            DECLARE @i INT 
            SET @i=0
            WHILE (@i>@num)
                BEGIN
                    INSERT  INTO @tab
                            SELECT  XSDae = CONVERT (VARCHAR(100), DATEADD(day, @i, GETDATE()), 23) ,
                                    Sort = @i
                    SET @i=@i-1
                END
            RETURN
        END

    如果朋友们觉得以后可能会用到的话,欢迎转载,当然也可以推荐一下,谢谢。

  • 相关阅读:
    Java基础——字符编码
    三:简单工厂模式
    二:代理模式(静态代理,动态代理)
    一:设计者模式六大原则和单例模式
    java源码
    JDK8新特性 -- Function接口: apply,andThen,compose
    JDK8新特性:Lambda表达式
    Java同步的三种实现方式
    spring boot注解和启动
    springboot:基础学习一 linux下后台启动springboot项目
  • 原文地址:https://www.cnblogs.com/lhmlyx2723356/p/4220370.html
Copyright © 2011-2022 走看看