Я использую встроенный запрос при весенней загрузке с разбивкой на страницы, проблема в том, что когда я запускаю запрос с размером страницы меньше количества записей, я получаю внутреннюю ошибку сервера, но она работает нормально или размер страницы больше чем нет записей. Ниже мой собственный запрос
@Query(value = "SELECT * FROM (SELECT * from transactions t where t.book_id=?1 OR t.reflect_book_id=?2 AND t.is_active = true) a inner join " +
"(select id, display_name from customers) b on a.customer_id = b.id order by display_name",
nativeQuery = true)
Page<Transaction> findAllTransactionsByName(String bookId, String reflect_book_id, Pageable pageable);
Ниже приведена ошибка, которую я получаю
... 110 common frames omitted
Caused by: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM (SELECT *) from transactions t where t.book_id='bid-5778a8af-6bd0-4f3e-87ac' at line 1
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) ~[mysql-connector-java-8.0.18.jar:8.0.18]
Я напечатал запрос sql и запустил его вручную, и он работал нормально. Ниже приведен запрос sql, напечатанный в журнале.
Hibernate: SELECT * FROM (SELECT * from transactions t where t.book_id=? OR t.reflect_book_id=? AND t.is_active = true) a inner join (select id, display_name from customers) b on a.customer_id = b.id order by display_name limit ?
Надеюсь, у вас возникла эта проблема, вам нужны все ваши знания в этой области. Спасибо.