2012-03-09 17 views
4

YY-MM-DD HH:MI:SS)の日付から日数を差し引きたいと思います。これを実行するための自動化された機能がありますか、このタスクを実行するための完全なコーディングですか?私は上記の作業を含むストアドプロシージャを書いています。 日付からSQL Serverの日数を差し引く

が、これは日付 2011-12-07 06:05:19.200であると言うことができますより明確にするために、私はそれから19日を減算したい、結果は 2011-11-18 06:05:19.200なり、日数は、あなたが削除

答えて

8

SPでのパラメータになるだろう私が以前に答えた同じ質問ですが、ここには必要なことをする関数があります。

CREATE FUNCTION SUBTRACT_DAYS(@date AS DATETIME, @days AS INT) 
RETURNS DATETIME 
BEGIN 
    RETURN DATEADD(dd, [email protected], @date); 
END; 

SELECT dbo.SUBTRACT_DAYS('2011-12-07 06:05:19.200', 19); 

> 2011-11-18 06:05:19.200 
4

これはどう:

CREATE PROCEDURE dbo.DoSomethingUseful @InputDate DATETIME, @NumberOfDays INT 
AS BEGIN 

    SELECT DATEADD(Day, @NumberOfDays, @InputDate) 

END 

し、このようにそれを呼び出す:

EXEC dbo.DoSomethingUseful @InputDate = '2011-12-07T06:05:19.200', @NumberOfDays = -19 

リターン:

2011-11-18 06:05:19.200 
関連する問題