Spring Boot中的多个实体JOIN

时间:2018-02-12 13:21:43

标签: spring spring-boot

我是春季启动的新手,所以我想知道如何使用本机查询加入并返回来自多个实体的数据集。像

Select p.a, q.b, r,c from table1 p, table2 q, table3 r where p.id = q.id and q.flag = r.flag;

感谢任何帮助:)

1 个答案:

答案 0 :(得分:1)

您可以在JPQL中使用自定义对象传递这些值或使用对象数组。

使用带有这些参数的构造函数创建一个类。

示例:

@Query(value = "Select new com.path.to.class.Aggregate(p.a, q.b, r.c) 
       from table1 p, table2 q, table3 r where p.id = q.id and q.flag = r.flag")

或使用List<Object[]>作为返回类型。列表中的第一个元素将包含这3个对象。