JPQL join for eager fetch 关联
JPQL join for eager fetch association
假设我有实体 A,它是与实体 B 有 @OneToMany
关联的父实体。还说我将获取模式设置为 eager。
因此,当我使用 JPQL 获取基于某些过滤器的实体 A 时,我是否需要使用 join 才能获取其子项?
当 children 是查询的一部分时,您必须使用 join
,例如:
select p
from parent p
inner join p.children c
where c ...
但您不必在加入之前使用 fetch
来初始化实体。
假设我有实体 A,它是与实体 B 有 @OneToMany
关联的父实体。还说我将获取模式设置为 eager。
因此,当我使用 JPQL 获取基于某些过滤器的实体 A 时,我是否需要使用 join 才能获取其子项?
当 children 是查询的一部分时,您必须使用 join
,例如:
select p
from parent p
inner join p.children c
where c ...
但您不必在加入之前使用 fetch
来初始化实体。