У меня есть этот код, где я создаю собственный запрос и при выполнении собственного запроса я использую метод setMaxResults.неверный sql-запрос, созданный с помощью setMaxResults с собственным запросом
List<?> resultList = (List<?>) getEntityManager(speedwingCustId, loggedInUserId).createNativeQuery(statement).setMaxResults(Integer.MAX_VALUE).getResultList();
это мое заявление перед выше код:
(SELECT IQV.VERSION_ID AS VERSION_ID FROM ITEM_QUERY_VIEW IQV WHERE AVAILABLE_VALUE_ID IN (15611) AND EQUIPMENT_AVAILABILITY_ID = 1 AND REGION_ID IN (5 , 8 , 10 , 14 , 21 , 20 , 23 , 24 , 26 , 35 , 33 , 39 , 45 , 55 , 54 , 53 , 52 , 63 , 62 , 61 , 68 , 71 , 64 , 65 , 76 , 72) AND VEHICLE_TYPE_ID IN (1 , 2 , 3 , 4 , 5 , 6 , 7 ) GROUP BY VERSION_ID HAVING COUNT (DISTINCT(AVAILABLE_VALUE_ID)) = 1)
это мой запрос во время выполнения:
Hibernate: (SE TOP(?)LECT IQV.VERSION_ID AS VERSION_ID FROM ITEM_QUERY_VIEW IQV WHERE AVAILABLE_VALUE_ID IN (15611) AND EQUIPMENT_AVAILABILITY_ID = 1 AND REGION_ID IN (5 , 8 , 10 , 14 , 21 , 20 , 23 , 24 , 26 , 35 , 33 , 39 , 45 , 55 , 54 , 53 , 52 , 63 , 62 , 61 , 68 , 71 , 64 , 65 , 76 , 72) AND VEHICLE_TYPE_ID IN (1 , 2 , 3 , 4 , 5 , 6 , 7 ) GROUP BY VERSION_ID HAVING COUNT (DISTINCT(AVAILABLE_VALUE_ID)) = 1)
Я использую сервер MSSQL и с помощью JPA.
Я * думаю * в родных запросах вам придется писать также часть смены/разбивки на страницы вручную. Я думаю, что спецификация JPA не требует его явно, хотя я бы ожидал, что она сработает. Не могли бы вы рассказать мне, какую версию Hibernate вы используете? –