2009-12-08 184 views
0

我有一個名爲'CreatedDate'在字段中的字段。它包含值爲 2009-12-07 11:02:20.890。我的搜索參數createddate.Parameter包含值爲2009- 12-07。我的參數只包含日期部分。如果我的參數只包含2009-12-07 它沒有給出結果。只有當時間包含它的給出結果。 我的查詢是 從STD_Enquiry選擇*其中Cr​​eatedDate ='2009-12-07 任何人都可以提供合適的查詢來獲得結果嗎?如何從日期時間在sql中獲取日期

+1

您使用的是什麼RDBMS? – 2009-12-08 04:25:23

回答

5

僅在日期部分進行比較(無時間):

WHERE DateColumn >= DATEADD(day, DATEDIFF(day, 0, @SomeDateParam), 0) 
+1

是的。但是如果你在(爲什麼)這個工作中加入了一個解釋(或者是一個鏈接),那麼它會對他有所幫助。 – 2009-12-08 04:26:35

+0

@Phillip,好的謝謝:http://mitch-wheat.blogspot.com/2007/05/sql-server-compare-date-part-of.html – 2009-12-08 05:07:37

+0

而且這也是:http://stackoverflow.com/questions/133081/sql-server-to-date-date-date-datetime – gbn 2009-12-08 06:03:20

0

試試這個:

Select * from STD_Enquiry where CreatedDate like '2009-12-07%' 
+2

這不是我推薦的方式! – 2009-12-08 04:23:05

0

使用該查詢表comapare僅日期

Select * from STD_Enquiry where to_char(CreatedDate,'mmddyyyy') = '09102007' 
0

SELECT *其中CreatedDate =''日期部分(yyyy,CreatedDate)+' - '+日期部分(mm,CreatedDate)+' - '+日期部分(DD,CreatedDate)''

相關問題