我下面的查询,显示 hibernate 异常:
SELECT DATE_ADD(DATE_FORMAT(MIN(t.time),'%Y-%m-%d'), INTERVAL 6 DAY) FROM Table t;
据我所知,hibernate 无法识别 INTERVAL
关键字。
谁能帮我写一个 HQL 查询,让我得到与上述查询相同的结果?
(我正在尝试从我的表中的最小日期获取 1 周后的日期)
最佳答案
HQL 和 SQL 是两个不同的东西。您可以使用 native SQL 查询而不是 HQL 查询。或者您可以只执行以下查询:
select min(t.time) from SomeEntity e
并在 Java 中添加 6 天:
Date minDate = (Date) query.uniqueResult();
minDate = DateUtils.addDays(d, 6); // using apache commons-lang
关于MySQL DATE_ADD INTERVAL 不适用于 Hibernate。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11202690/