[原创]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
如果朋友們覺得以后可能會用到的話,歡迎轉載,當然也可以推薦一下,謝謝。
轉載于:https://www.cnblogs.com/lhmlyx2723356/p/4220370.html
總結
以上是生活随笔為你收集整理的[原创]SQL 表值函数:获取从今天计算起往前自定义天数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaScript系列-----对象基
- 下一篇: led