我有查询获取值取决于日期范围,如:
Where (CDATE(TR_DATE) >= ('03/06/2014') and CDATE(TR_DATE) <= ('13/06/2014'))
问题是Access将忽略第一个条件并且只执行最后一个条件.... 任何建议......
答案 0 :(得分:1)
Access数据库引擎 始终 将不明确的#xx/yy/zzzz#
日期文字解释为mm/dd/yyyy
,无论Windows中指定的区域设置如何。因此,#03/06/2014#
始终 将被解释为March 6, 2014
。另一方面,#13/06/2014#
没有歧义,因为没有第13个月,所以它将被解释为June 13, 2014
。
解决方案是
#mm/dd/yyyy#
,甚至更好,#yyyy/mm/dd#
格式。 答案 1 :(得分:0)
我不知道这是否能完全解决您的问题,但Access中的日期应该被#
而不是'
包围:
WHERE CDATE(TR_DATE) >= #03/06/2014# AND CDATE(TR_DATE) <= #13/06/2014#
或者:
WHERE Format(TR_DATE, "dd/mm/yyyy") >= Format(#03/06/2014#, "dd/mm/yyyy")
AND Format(TR_DATE, "dd/mm/yyyy") <= Format(#13/06/2014#, "dd/mm/yyyy")
答案 2 :(得分:0)
尝试
Where TR_DATE Between #06/03/2014# And #06/13/2014#
或
Where TR_DATE Between #2014-06-03# And #2014-06-13#
这是更普遍接受的格式。