我在下面的声明中面临问题
`SELECT b
FROM com.development.searchbooks.dto.BooksEntity b
WHERE lower(b.title) LIKE ?1
OR lower(b.author_name) LIKE ?1
OR lower(b.publication) LIKE ?1
ORDER BY title ASC LIMIT 10 OFFSET ?2`
意外令牌:第1行173列附近的LIMIT
这是查询我使用过滤基于关键字和顺序通过升序和做分页.我得到错误的权利后添加"LIMIT 10 OFFSET?2"这POC。
请帮忙。
jpa/jpql不考虑LIMIT关键字。因此,对于将LIMIT与@Query一起使用,我们可以使本机查询标志为真。
( using - nativeQuery=true )
下面是示例
@Query("SELECT s FROM Table s ORDER BY s.id DESC LIMIT 1", nativeQuery=true)
我的问题的最终答案,
@Query(value = "SELECT * FROM books WHERE lower(title) LIKE %?1% OR lower(author_name) LIKE %?1% OR lower(publication) LIKE %?1% ORDER BY title ASC LIMIT 10 OFFSET ?2", nativeQuery = true)