簡體   English   中英

如何在JPARepository中編寫內部聯接查詢

[英]How to write inner join query in JPARepository

我有以下查詢,該查詢可以在MySQL中完美運行,但是在存儲庫中編寫時卻給出了錯誤。如何在JPARepository編寫內部JPARepository查詢?

@Query("Select address from Address a inner join Order o ON a.id=o.pickup_address_id where o.customer_id=: customerId  AND a.address LIKE 'C%'")
     Set<Address> findPickupAddress(@Param("customerId") Long customerId); 

錯誤:意外令牌:第1行第66列附近的訂單

order是保留字。 如果您不能重命名該表,則應按以下方式使用它:

@Query("Select address from Address a inner join `Order` o ON ...")

JPQL中沒有ON ,因此查詢更新為:

 @Query("Select a from Address a , Order o where a.id=o.pickupAddress AND o.customer.id=:customerId  AND a.address LIKE 'C%'")
     Address findPickupAddress(@Param("customerId") Long customerId);
}

暫無
暫無

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

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