spring boot jpa存储库中的内连接

时间:2017-02-15 14:31:38

标签: java spring jpa spring-boot inner-join

我的Spring Boot JPA项目中有三个实体。

A_Ent

| A_field1 |  A_field2 |  A_field3 |

B_Ent

| B_field1 | B_field2 | B_field3 |

C_Ent

| C_field1 | C_field2 | C_field3 |

我想在某些存储库中使用innerjoin创建查询。

fx:

SELECT A_field1, B_field2 C_field3 FROM A_Ent AE
inner join B_Ent BE on (AE.field3 = BE.field3)
inner join C_Ent CE on (AE.field2 = CE.field2)
WHERE CE.field3 = 1

如何添加特定的内连接选择到我的spring boot jpa存储库(如果可能的话)?

1 个答案:

答案 0 :(得分:-1)

我认为您需要在JPQL查询中使用旧的连接方式(我假设您必须通过非主/外键加入):

select AE.A_field1, BE.B_field2 CE.C_field3 
from A_Ent AE, B_Ent BE, C_Ent CE 
where (AE.field3 = BE.field3)
   and (AE.field2 = CE.field2)
   and CE.field3 = 1

您必须记住,这将是一个投影,因此您将获得Object[]List<Object[]>,具体取决于您是否分别在查询中使用uniqueResult()list()方法