2017-01-30 61 views
-6

我用昨天的日期下面的where條件爲0到今天的日期選擇在條件

where (DateDiff(d, FilteredPhoneCall.createdon, GETDATE()) = 0 
     or DateDiff(d, FilteredPhoneCall.modifiedon, GETDATE()) = 0) 

選擇的價值,但我需要的。如果我用它來選擇在條件昨日值-1,而不是0。它沒有返回昨天的日期值。

where (DateDiff(d, FilteredPhoneCall.createdon, GETDATE()) = -1 
     or DateDiff(d, FilteredPhoneCall.modifiedon, GETDATE()) = -1) 
+0

您是否使用sqllite或SQL Server?他們是不同的數據庫。請只使用相關標籤(C#與此無關) – Rob

回答

1
SELECT 
* 
FROM yourTable 
WHERE 
(FilteredPhoneCall.createdon >= dateadd(day,datediff(day,1,GETDATE()),0) 
    AND FilteredPhoneCall.createdon < dateadd(day,datediff(day,0,GETDATE()),0)) 
OR 
(FilteredPhoneCall.modifiedon >= dateadd(day,datediff(day,1,GETDATE()),0) 
    AND FilteredPhoneCall.modifiedon < dateadd(day,datediff(day,0,GETDATE()),0)) 
0

嘗試之間的條件;

WHERE FilteredPhoneCall.createdon between DATEADD(DAY, -1, GETDATE()) and GETDATE() 
0

試試這個: -

WHERE CAST(DATEADD(DAY, -1, GETDATE()) AS DATE) =CAST(FilteredPhoneCall.createdon AS DATE) 
1

使用此:

Where FilteredPhoneCall.createdon >= DATEADD(day,-1, GETDATE())