簡體   English   中英

在 JPQL 查詢中編寫 Native SQL

[英]Write Native SQL inside JPQL query

考慮具有 M:N 關系的 2 個表TableATableB以及連接它們的映射表(例如TableAB )。 代碼中只有一個具有@Entity對象表示,我想保持這種狀態(假設其他表僅由其他應用程序使用)。

是否可以在 JPQL 中編寫一些本機 SQL 部分命令,其中代碼引用 Java 中不存在的實體?

就像是:

select a
from TableA a
join TableAB ab on a.id = ab.id       -- this part won't work as there is no TableAB entity in the code
where ab.someOtherColumn = :param     -- this would be problematic too

您是否使用任何 JPA 框架,例如 spring-boot-starter-data-jpa?

如果是這樣,它提供了提供“nativeQuery”布爾值的org.springframework.data.jpa.repository.Query注釋。

@Query(value = "SELECT * FROM user WHERE username = :username", nativeQuery = true)
User findByUsername(@Param("username") String username);

+ org.springframework.data.repository.query.Param

暫無
暫無

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

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