2012-01-28 86 views
2

我有一个查询需要2个日期时间作为参数,我需要写一个where子句来获取中间的记录。这些不只是日期,但随着时代的日期linq-to-sql之间查询两个日期时间

到目前为止,我这个(即2012年1月28日9:45):

where d.RecordDateTime > StartDate && d.RecordDateTime < EndDate 

我应该rewritting这些为:

where d.RecordDateTime > StartDate.Date && d.RecordDateTime < EndDate.Date 

还是没问题。

谢谢。

+2

只有你能回答这个简化的方式...你想开始日期日期和结束日期是时间或者你需要在这些日期(00:00至23:59)之间找到任何东西? – Yahia 2012-01-28 13:48:29

+0

是RecordDateTime在DB中定义为DateTime吗? – 2012-01-28 13:52:06

+0

@Yahia:我希望2012年1月26日9时45分和2012年1月27日10时45分或2012年1月11日4时22分和2012年1月19日18时33分时的所有内容。日期和时间都很重要。 – frenchie 2012-01-28 13:52:20

回答

3

您当前的查询definitley工作......这取决于是否要在结果中包括StartDate和/或EndDate应该改变了一点点:

where d.RecordDateTime >= StartDate && d.RecordDateTime <= EndDate 

如果你像你在提出更改查询您的问题,那么你会让它包含所有结果,而不依赖于时间 - 尽管它会错过像00:00:00那样的时间行,甚至会错过一整天(EndDate)。

+0

好的,谢谢你平等的提示! – frenchie 2012-01-28 14:00:51