hibernate - 如何解决:无法构建 Hibernate SessionFactory 原因:org.hibernate.HibernateException:命名查询中的错误
问题描述
我有一个命名查询
@NamedQuery(name = "Notification.findByyoungngAndInstNum",
query = "SELECT n FROM Notification n WHERE n.institutionsregister.institutionnumber = ?1 and n.young is not null and n.date is null")
我想在我想添加年龄 >=25 岁的地方添加一个额外的检查
我试过这个
SELECT n FROM Notification n WHERE n.institutionsregister.institutionnumber = ?1 and n.young is not null and age(current_date, n.young.dob) >= (interval '25' year)) and n.date is null
但是在 jboss 中部署时出现错误。(无法构建 Hibernate SessionFactory 原因:org.hibernate.HibernateException:命名查询中的错误)
表名是:Notification ,Institutionregister 它具有字段机构编号,Young 表具有字段dob(出生日期)。
无法弄清楚如何构图。
解决方案
这是另一种解决方案,试试这个
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.YEAR, -25);
Date dt = calendar.getTime(); // use this as query argument, it can be dynamic
SELECT n FROM Notification n WHERE n.institutionsregister.institutionnumber = ?1 and n.young is not null and n.date is null and n.young.dob < = ?2
推荐阅读
- node.js - 电子打包机 win32 不打开窗口
- node.js - Mocha - 循环遍历在 before() 中初始化的数组失败
- amazon-iam - AWS IAM:这是基于资源或身份的策略吗?
- c# - Hangfire.AspNetCore.dll 中出现“System.StackOverflowException”类型的未处理异常
- react-router - React-router 链接在共享时被转义
- android - 在 onClickListener 中关闭 Anko 对话框
- android - Vertical Recycler 中的 Vertical Recycler View 为所有项目调用 onBindViewHolder
- .htaccess - 可通过多个 URL 访问的站点
- angular - Firebase 集合不返回值
- matlab - 在 MATLAB 动画中创建沿图形移动的点