我的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存储库(如果可能的话)?
答案 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()
方法