2017-06-08 99 views
2

我正在嘗試從我們的Avaya數據庫SQL 2012的電話,我似乎不能讓我的代碼的日期身在何方日期。選擇電話在今天

cmdCalls = String.Format("SELECT * FROM dbo.tblCallList WHERE CreateDate > cast('" & DateYesterday & "' as date)") 

這是我的查詢字符串

Dim DateYesterday As Date = Date.Today.AddDays(<insert number of days>).ToString("yyyy-MM-dd") 

我似乎不能拉我從數據庫中需要的數據,但它從日期變量減去天,但其使用的問題日內對查詢個月,顯示了一個月,而不是一天的所有記錄

數據庫上的日期格式是「2017年6月8日12:04 :: 00:000」例如

+0

什麼是CreateDate列的數據庫數據類型?如果像datetime這樣的時間類型而不是'char' /'varchar',它是一個二進制結構,並且沒有格式。 –

+0

我不知道這一點,但可能真的只是時間 –

+0

,因爲值包含小時和分鐘,不能是一個日期。 –

回答

2

使用th e當前在數據庫中的日期:

SELECT * 
FROM dbo.tblCallList 
WHERE CreateDate >= CAST(getdate() as date); 
+0

我不知道爲什麼,但那是返回0結果 –

+0

@ K.Chanel。 。 。您應該編輯問題並提供示例數據。同時,嘗試'cast(getdate() - 1 as date)'來查看是否從昨天獲得任何東西。 –

+0

爲什麼不使用正確的dateadd? 'createDate> = cast(dateadd(day,-1,getdate())as date); – ATC