2つの日時の間の日付差分を次のようにフェッチするクエリがあります:
SELECT DATEDIFF(DAY, @CreatedDate , GETDATE())
Ex :
SELECT DATEDIFF(DAY, '2013-03-13 00:00:00.000' , GETDATE())
作成された日から1日を引く、次のようなクエリを実行する必要があります。
SELECT DATEDIFF(DAY, **@CreatedDate- 1** , GETDATE())
2つの日時の間の日付差分を次のようにフェッチするクエリがあります:
SELECT DATEDIFF(DAY, @CreatedDate , GETDATE())
Ex :
SELECT DATEDIFF(DAY, '2013-03-13 00:00:00.000' , GETDATE())
作成された日から1日を引く、次のようなクエリを実行する必要があります。
SELECT DATEDIFF(DAY, **@CreatedDate- 1** , GETDATE())
これを試して
SELECT DATEDIFF(DAY, DATEADD(day, -1, '2013-03-13 00:00:00.000'), GETDATE())
また
SELECT DATEDIFF(DAY, DATEADD(day, -1, @CreatedDate), GETDATE())
正確に何をしようとしているのかはわかりませんが、このSQL関数が役立つと思います。
SELECT DATEADD(day,-1,'2013-04-01 16:25:00.250')
上記はあなたに与えるでしょう2013-03-31 16:25:00.250
。
正確に1日戻り、標準の日時または日付形式で機能します。
このコマンドを実行して、探しているものが得られるかどうかを確認してください。
SELECT DATEADD(day,-1,@CreatedDate)
今日の日付から1日を引くには、次のようにします。
Select DATEADD(day,-1,GETDATE())
(元の投稿は-7を使用しており、正しくありませんでした)
どうやらあなたは日時からあなたが望む日数を引くことができます。
SELECT GETDATE() - 1
2016-12-25 15:24:50.403
これは機能するはずです。
select DATEADD(day, -1, convert(date, GETDATE()))
SELECT DATEDIFF (
DAY,
DATEDIFF(DAY, @CreatedDate, -1),
GETDATE())
これを試してみてください、これがあなたを助けるかもしれません
SELECT DATEDIFF(DAY, DATEADD(DAY,-1,'2013-03-13 00:00:00.000') , GETDATE())
正直に言うと、私は次のように使用します。
select convert(nvarchar(max), GETDATE(), 112)
YYYYMMDD
それからマイナス1を与えます。
またはもっと正確に
select convert(nvarchar(max), GETDATE(), 112) - 1
昨日の日付。
Getdate()
あなたの価値観に置き換えてくださいOrderDate
select convert(nvarchar (max),OrderDate,112)-1 AS SubtractDate FROM Orders
それをする必要があります。
あなたはこれを試すことができます。
Timestamp = 2008-11-11 13:23:44.657;
SELECT DATE_SUB(OrderDate,INTERVAL 1 DAY) AS SubtractDate FROM Orders
出力:2008-11-10 13:23:44.657
私はそれがあなたの問題を解決するのに役立つことを願っています。