Datetime MS Access:如何将日期添加到此表达式中的时间?
我需要在这个表达式的时间旁边添加日期(在查询的设计视图中),以便将Datetime MS Access:如何将日期添加到此表达式中的时间?,datetime,ms-access,expression,ms-access-2013,Datetime,Ms Access,Expression,Ms Access 2013,我需要在这个表达式的时间旁边添加日期(在查询的设计视图中),以便将DateDiff函数的第二部分改为:#07/29/2016 08:00:00 AM# 我拥有的:DATEDIFF(“n”,now(),[end\u time]) 我需要什么:DATEDIFF(“n”,now(),#7/29/2016#+[end#u time]) 我所尝试的: DATEDIFF(“n”,now(),#7/29/2016#+[结束时间]) DATEDIFF(“n”,now(),#7/29/2016#和[end#u t
DateDiff
函数的第二部分改为:#07/29/2016 08:00:00 AM#
我拥有的:DATEDIFF(“n”,now(),[end\u time])
我需要什么:DATEDIFF(“n”,now(),#7/29/2016#+[end#u time])
我所尝试的:
DATEDIFF(“n”,now(),#7/29/2016#+[结束时间])
DATEDIFF(“n”,now(),#7/29/2016#和[end#u time])
DATEDIFF(“n”,now(),Date()+[end\u time])
DATEDIFF(“n”,now(),Date()&[end\u time])
此表达式键入错误,或者太复杂而无法计算。例如,数值表达式可能包含太多复杂的元素。尝试通过将表达式的一部分指定给变量来简化表达式。
我找到了答案
DATEDIFF(“n”,now(),(DateValue(Date())+TimeValue([end\u time]))
试试这个:
1) 如果[结束时间]是日期时间类型
DATEDIFF("n", now(), #7/29/2016#) + DATEDIFF("n", #7/29/2016#, [end_time])
2) 如果[结束时间]是数字(以分钟为单位)
你能解释一下DATEDIFF是在哪里完成的吗?它是在VBA中,还是在窗体的字段值中,还是在其他位置?它在查询(设计视图)中。因此,如果我理解正确,您有一个列存储时间,并且您希望获得从现在起到该时间的分钟数(这意味着您只选择今天的行)。对吗?不,存储时间的列是未来时间。这是生产线停止的时间,所以如果超过午夜,可能是明天。但是我想出来了,谢谢你的时间:)我本来想提出一个时间价值()但是你自己发现了。我必须正确地理解。
Date()
只返回日期部分,因此应用DateValue()
确实是多余的,但是TimeValue()
调整就是我要建议的。感谢您发布您的发现。是的,我同意这是多余的,但这似乎绕过了Access给出的错误。看起来Access只是吹毛求疵,如果这样做有效的话,Date()
本身就不行。哦,好吧。
DATEDIFF("n", now(), #7/29/2016#) + [end_time]