我在名为start_time的日期/时间列上有一个带谓词(条件)的访问查询。条件在两个表单字段中定义,使用"格式"作为"短时间"。问题是这个查询没有给出正确的结果。
SELECT event_cust.*
FROM event_cust
WHERE Format([start_time],"hh:mm")
BETWEEN [Forms]![CustEventRptForm]![FromHour]
AND [Forms]![CustEventRptForm]![ToHour]
还尝试使用Format([start_time], "short time") BETWEEN ...
- 也无效。
除上述代码外,我们还需要其他任何内容才能获得正确的结果吗?
我已经使用如下所示的文字值进行了测试,并且我得到了正确的结果。
SELECT event_cust.*
FROM event_cust
WHERE Format([start_time],"hh:mm") BETWEEN '10:00' AND '13:00'
答案 0 :(得分:1)
我的猜测是它没有正确地解释表格中的值。
尝试在值之前和之后添加引号:
SELECT event_cust.*
FROM event_cust
WHERE Format([start_time],"hh:mm") Between "" & [Forms]![CustEventRptForm]![FromHour] & ""
And "" & [Forms]![CustEventRptForm]![ToHour] & ""
答案 1 :(得分:0)
不要使用字符串比较日期/时间。
EF Core