gpt4 book ai didi

spring - JPQL 中的多个 LEFT JOIN FETCH

转载 作者:行者123 更新时间:2023-12-04 05:13:42 25 4
gpt4 key购买 nike

我试图在一个查询中从 3 个表中获取数据。我有“工作经验”、“技能”和“描述”。这个想法是一个工作经验有多个与之相关的技能和多个描述。我正在尝试从一个特定的 Employer 查询所有 Workexperiences(Workexperience 表有一个“EmployerId”列)。

我从获取描述开始,这是有效的:

select distinct w from Workexperience w 
left join fetch w.skills
where w.employer=(select e from Employer e where e.username = :username)

这给了我所有的工作经验和他们的技能,到目前为止一切都很好。
当我尝试添加描述时,它变坏了:
select distinct w from Workexperience as w
left join fetch w.skills
left join fetch w.descriptions
where w.employer=(select e from Employer e where e.username = :username)

这给了我经典的lazyinitializationexception。

所以我的问题是:您可以在一个查询中使用多个“左连接提取”语句吗?如果是这样,你如何做到这一点?

提前致谢!

最佳答案

No你不能(根据规范)。

请注意,Hibernate 支持它。

关于spring - JPQL 中的多个 LEFT JOIN FETCH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14560865/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com