2010-04-26 117 views
0

雖然使用日期字段中選擇記錄我面臨的一個問題,亞音速3.0 SELECT查詢使用DateColumn

我SQL2005視圖(ViewOrders)StarDate柱使用具有

4/23/2010 12:00:00 AM 
4/23/2010 12:00:00 AM 
4/23/2010 12:00:00 AM 
4/23/2010 12:00:00 AM 
4/23/2010 1:07:00 PM 

我的代碼亞音速3.0

AMDB ctx = new AMDB(); 
SqlQuery vwOrd = ctx.Select.From<viewOrders>(); 
vwOrd = vwOrd.And("StartDate").IsGreaterThanOrEqualTo("04/22/2010");//From date 
vwOrd = vwOrd.And("StartDate").IsLessThanOrEqualTo("04/22/2010");// To Date 
List<viewOrders> cat = vwOrd.ToList<viewOrders>(); 

我能夠只抓取前四條記錄,我無法抓取最後一條記錄,其中包含(4/23/2010 1:07:00 PM)。 我認爲問題是在時間格式..

我怎樣才能亞音速,只比較日期時間列中的日期編碼。

我不需要日期「之間」亞音速方法,因爲我可以得到單一的日期參數(從單獨的日期)。

+0

我SQL2005視圖(ViewOrders)StarDate列有 (R1)2010年4月23日12:00:00 AM (R2)2010年4月23日12:00:00 AM (R3)4/23/2010 12:00:00 AM (R4)4/23/2010 12:00:00 AM (r5)4/23/2010 1:07:00 PM – vineth 2010-04-26 13:03:00

回答

1

作爲一般規則,得到一個日期範圍內的日期時間記錄通常由(僞代碼)

DateField >= startdate AND DateField < (EndDate + 1 day) 

我稍微你的榜樣混淆您的最新記錄都是23-APR-10實現,但你似乎在10月22日搜索那些?

此外,作爲一般建議,使用'YYYYMMDD'格式進行日期比較 - 這將應付不同日期格式的不同服務器。