JPA退出联接不起作用?

时间:2018-08-28 09:40:24

标签: spring spring-boot jpa spring-data-jpa

我有两个实体Outlet和Report。它们在Entity类中没有连接。即使没有出口ID,我也需要报告。 以下是我正在编写的查询,但其行为类似于内部联接。

@Query("Select rep,out.area.area_name from Report rep left join Outlet out on out.id=rep.outletId where rep.cDate in :dates")
List<Object[]> getReportsByMethodAndFormulaAndTimePeriods(@Param("dates") List<LocalDate> dates);

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这不是SQL,因此联接是通过实体字段进行的。查询应该是这样

@Query("Select rep,out.area.area_name from Report rep left join rep.outlet out where rep.cDate in :dates")

我认为报表实体具有一个可为空的字段Outlet outlet。

在您的情况下,如果没有相关的出口,out.area.area_name可能会失败