如何在Access查询中获取日期
|
在Access 2000中,我们只能使用哪个函数来获取日期值?
创建日期
2010/4/4上午2:32:00
2010/4/4下午2:32:00
19/4/2010 10:14:00 AM
17/5/2010下午9:34:00
如果我查询:
SELECT * FROM tblTest WHERE CreateDate <= #20/4/2010#
我只看到19/4/2010的记录。
实际上,结果应该显示前3条记录,不是吗?
没有找到相关结果
已邀请:
1 个回复
郡豪靠暖
因此,您的WHERE条件会将20/4/2010 2:32:00 AM和20/4/2010 2:32:00 PM都排除在外,因为它们大于20/4/2010 12:00:00 AM。 如果您正在Access会话中运行查询,则可以使用DateValue()函数将CreateDate值转换为同一日期的午夜。此查询应返回您期望的结果:
另一种方法是将一天后的午夜用作临界值。
第二个查询执行起来可能会明显更快,因为它不需要将DateValue()函数应用于tblTest中的每个CreateDate值。而且,如果为CreateDate编制了索引,则第二个查询仍会更快。第一个查询将无法利用CreateDate上的索引。 另外,我更喜欢为文字值使用明确的日期格式,因此将这样编写查询: