[原创]SQL 表值函数:获取从今天计算起往前自定义天数

王朝学院·作者佚名  2016-05-26
窄屏简体版  字體: 小  |  中  |  大  |  超大  

[原创]SQL 表值函数:获取从今天计算起往前自定义天数PS:此博文是利用Windows Live Writer 2012编写,格式效果可能不太好。

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

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

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

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

具体函数如下:

-- ============================================= -- 调用: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

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

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航