问题描述
我正在使用 MS ACCESS 查询来查找来自链接 Excel 的两个日期和来自 Access 表单文本框的输入日期之间的数据。返回“开始日期”没有问题,但“结束日期”错过了一天。我尝试使用不同的日期格式但失败并搜索了很长时间但不知道。有什么建议吗?非常感谢
代码:
WHERE TransactionDetail.transactionDate >= Forms![Reports]![Text0] AND TransactionDetail.transactionDate <= Forms![Reports]![Text1]
解决方法
这可能是因为数据同时包含日期和时间部分,因此合并的日期时间大于单独的日期部分。尝试使用 DateValue()
:
WHERE DateValue(TransactionDetail.transactionDate) >= Forms![Reports]![Text0] AND DateValue(TransactionDetail.transactionDate) <= Forms![Reports]![Text1]
,
如果您希望/需要利用 transactionDate 上的索引,您可以使用:
WHERE TransactionDetail.transactionDate >= Forms![Reports]![Text0] AND TransactionDetail.transactionDate < DateAdd("d",1,Forms![Reports]![Text1])