【发布时间】:2020-07-11 11:17:16
【问题描述】:
我试图通过 id 仅选择父级旁边的某些实体。这可能吗?示例(样板省略):
class Parent {
int id;
List<Child> children;
}
class Child {
int id;
...
}
还有我的 JpaRepository:
interface ParentRepo extends JpaRepo<Parent,Integer> {
@Query("SELECT p FROM Parent p JOIN p.children c WHERE p.id = :parentId and c.id IN(:childIds")
Parent getParentByIdAndChildIds(int parentId, List<Integer> childIds)
}
我的期望是调用:
parentRepo.getParentByIdAndChildIds(1, Arrays.asList(1,2,3))
将返回仅附加 3 个子实体的父对象,但相反,我得到所有子实体(即 ID 为 1-10 的子实体)。
【问题讨论】:
标签: java spring jpa spring-data jpql