2

我想获得当前日期+/-几个小时。

根据文档,其中之一应该工作:

date_sub(now(), interval 1 hour)
date_sub(current_time(), interval 1 hour)

但事实并非如此。我使用的 Makumba 版本是 0.8.2.5.1

难道我做错了什么?

4

2 回答 2

1

实际上,这些功能仅在 Makumba >= 0.9 中有效(在某些版本中 <= 0.7)

0.8 中的解决方法是通过 JSP 标记以编程方式执行日期,例如:

<jsp:useBean class="java.util.Date" id="oneHourAgo" />
<jsp:setProperty name="oneHourAgo" property="hours" value="${oneHourAgo.hours - 1}" />

然后在查询中使用变量 inOneHour(位于 pageContext 中)作为命名参数,例如:

<mak:list from="company.Company c" where="c.TS_create >= $oneHourAgo">
  ....
</mak:list>
于 2011-03-20T12:15:14.257 回答
0

不幸的是,在 0.9 之前的版本中,date_subanddate_add函数没有被正确解析,所以它们不能正常工作。(它实际上应该从文档中删除)

在 0.9+ 版本中,您将拥有新功能dateAdddateSub并且对于您的情况,您可以:

dateSub(now(),1,'hour')

这应该有效。

于 2011-03-20T11:46:52.187 回答