簡體   English   中英

如何使用左外部聯接創建jpql

[英]how to create jpql with left outer join

例如,我有2個實體。
實體(Mysql表名稱=“ A”)
B實體(MySQL表名稱=“ B”)
我想從A表中獲取不在B表中的數據。
我寫了SQL,它正在工作。
SELECT *從A.id的左外部聯接B = B.a_id,B.id為null

JPQL如何實現?

我相信以下應該起作用:

SELECT A FROM A a LEFT JOIN a.B b WHERE b.id = null;

這應該將id與B的A連接在一起,而在其中A與B不匹配的地方保留null。然后從a中選擇b.id為null的行。 看起來像您要找的東西。 還要簽出以下SO: 如何使用LEFT OUTER JOIN進行JPA查詢並按照以下步驟操作: 如何使用LEFT OUTER JOIN創建JPA查詢

讓我知道是否可行。

您可以使用此命令

從不在A.id中的位置選擇*(從B中選擇B.id)

如果您只想加入,請告訴我

如果您具有某種以下結構:

Class EntityA
--------
long Id
Set<EntityB> Bs

Class EntityB
-------
long Id
EntityA A

我認為以下應該有效

SELECT a FROM EntityA a WHERE a.Bs IS EMPTY

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM