我可以使用 QuerydslPredicate 执行一对多连接查询吗?

时间:2020-12-22 14:07:22

标签: spring spring-data-jpa querydsl spring-restcontroller spring-boot-starter

我在 this guide 中看到提供路径作为谓词的一部分可以生成连接:

get("/users?address.country=Spain") 生成:

select user0_.id as id1_1_, 
       user0_.name as name2_1_ 
from user user0_ 
      cross join address address1_ 
where user0_.id=address1_.user_id 
      and address1_.country='Spain'

在上面的例子中,虽然我看到关系是一对一的。

我的问题是:是否可以提供一条从一对多的路径以创建隐式外连接

例如在 above guide example 中,我能否提供:/users?address.country=Spain 如果用户与地址具有一对多关系,并返回如下内容?:

user1-address1
user1-address2
user2-address3
user2-address4

1 个答案:

答案 0 :(得分:0)

我刚刚回答了这个问题,至少在加入方面是这样。我不知道你所说的“作为谓词的一部分”是什么意思。我鼓励您先研究并发布您尝试过的内容,然后再对 SO 提出糟糕的问题。

JPA Criteria: QuerySyntaxException for left join on treat entity

相关问题