项目场景:
JPA 提示列名无效 plsql执行正常
问题描述
刚开始这么写的 查询 t .code, t.out_date 这两个字段 运行后报
[2020-09-07 10:28:11,038] [ERROR] [o.h.e.j.s.SqlExceptionHelper SqlExceptionHelper.java:142] 列名无效
也不提示哪一列无效,奇怪了,之前这么写都正常啊
以为是 out_date 与实体类不一致 用了别名试一下 还是报错,后面改成 t.* ,查询所有字段就没问题了
@Query(value = "SELECT b.* from " +
"(" +
" select t.code,t.out_date outDate from newhcp.emp_employee_detail_v d, newhcp.emp_employee_base_v t " +
" where d.contract = '1' and d.out_date is not null " +
" and to_number(to_date(to_char(sysdate,'yyyy/MM/dd'),'yyyy/MM/dd')-d.out_date) <= 90 " +
" and d.emp_id = t.id " +
" and t.mobile = ?1 ORDER BY d.out_date DESC " +
") b WHERE rownum = 1 ",nativeQuery = true)
Employee findxxx(String mobile);
原因分析:
返回的结果是一个对象 Employee 来接收,查询的字段不全跟实体类对象不能一一对应,可以改成 t.*查询全部 ,或者用其它数据对象来接收返回结果。
版权声明:本文为qq_30832781原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。