如何在HQL中使用Date_sub()函数?

时间:2012-08-23 04:59:38

标签: hibernate hql

如何在hql中使用date_sub()函数。 对于以下sql查询中的示例:  select * FROM performance其中performance_id = 8955和daterangefrom> =(date_sub('2008-12-01 00:00:00',间隔8小时));

我必须在@NamedQuery中写这个,所以我尝试了这个但是没有工作:

@NamedQuery(name = "performance.performanceBySourceId", query = "select p from Performance p where p.source.id = :sourceID and p.dateRangeFrom >= (registerFunction('performance.queryString', new SQLFunctionTemplate(Hibernate.STRING, 'date_add('2008-12-01 00:00:00', INTERVAL 2 hour))) order by p.dateRangeFrom desc' ")

1 个答案:

答案 0 :(得分:2)

我遇到了同样的问题,看来hibernate dos不支持DATE_SUB的mysql函数,所以我们必须使用本机sql查询