JPQL 如何使用多个连接从一个表中获取数据?

问题描述 投票:0回答:1

我需要从一个表中获取与父子相关的实例列表,但没有对关系列设置约束。三级层次结构是可能的。 我写了以下查询

"select distinct s, s1, s2 from SomeTable s" +
            " join RelatedTable rt on s.id = rt.someId and rt.id = :paramId" +
            " left join fetch SomeTable s1 on s1.parentId = s.id" +
            " left join fetch SomeTable  s2 on s2.parentId = s1.id"

假设在顶层我有一个实例,在底层 - 十个实例,在 sql 控制台中我可以看到按预期连接的数据,但在 java 代码中我有包含 10 个顶层实例的列表。我做错了什么?

join spring-data-jpa jpql
1个回答
0
投票

通过原生查询和 sql union 解决。

© www.soinside.com 2019 - 2024. All rights reserved.