我在JPQL中创建查询以通过称为代码的字段(使LEFT JOIN)联接两个表Table1和Table2时遇到问题.
问题是我的两个实体与JPA没有关系(我需要这样做).
我搜索了一个解决方案,但尚未找到它.
解决方法:
您可以让实体管理器执行本机查询.查看this page section “Utilizing Native SQL Queries”
因此,您的代码如下所示:
List<SOME_DATA_TYPE> list = (List<SOME_DATA_TYPE>)em.createNativeQuery
("SELECT * FROM table1 a join talbl2 b on a.somefiedd = b.somefield " , some.package.name.SOME_DATA_TYPE.class)
.getResultList();
从技术上讲不是JPQL,但仍然是JPA.是个主意
希望能有所帮助.