在Hibernate中查询日期和时间跨度

时间:2011-11-16 07:43:07

标签: java hibernate datetime hql

我想使用Hibernate查询where A.beginTimestamp + A.timespan > current_timestamp()之类的条件。

beginTimestamp是时间戳列,A.timespan是以秒为单位的时间跨度。

如何在Hibernate中执行此操作?

谢谢!

1 个答案:

答案 0 :(得分:1)

考虑在DAO中查询的where子句中使用函数TIMESTAMPDIFF。它的签名是:

TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2):返回datetime_expr1和datetime_expr2之间的整数差异

结果的单位由单位参数给出。

单位应为以下值之一:

FRAC_SECOND,
SECOND,
MINUTE,
HOUR,
DAY,
WEEK,
MONTH,
QUARTER, or
YEAR.