加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

java – Spring Data’Left Join Fetch’查询返回null

发布时间:2020-12-15 01:43:40 所属栏目:大数据 来源:网络整理
导读:我的查询如下所示: @Query("SELECT p FROM Pilot p LEFT JOIN FETCH p.playerShips WHERE p.nickname = (:nickname)") 到现在为止还挺好.即使playerShips为空,我也会获得Pilot实例. 现在,我想只获取不活动的船只,所以我修改了我的查询,如下所示: @Query("S

我的查询如下所示:

@Query("SELECT p FROM Pilot p LEFT JOIN FETCH p.playerShips WHERE p.nickname = (:nickname)")

到现在为止还挺好.即使playerShips为空,我也会获得Pilot实例.
现在,我想只获取不活动的船只,所以我修改了我的查询,如下所示:

@Query("SELECT p FROM Pilot p LEFT JOIN FETCH p.playerShips s WHERE p.nickname = (:nickname) AND s.active = false")

我作为一名飞行员得到了空,所以它显然不起作用.如果有人能解释如何使用适用于子元素的WHERE子句创建JOIN FETCH查询,我会很高兴.提前致谢.

最佳答案
只需将其移动到连接条件:

@Query("SELECT p FROM Pilot p LEFT JOIN FETCH p.playerShips s ON s.active = false WHERE p.nickname = (:nickname)")

ON子句在JPA 2.1中定义

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读