U gebruikt JPQL dat dergelijke beperkende resultaten niet ondersteunt. Als u native JPQL gebruikt, moet u setMaxResults
. gebruiken om de resultaten te beperken.
U gebruikt echter Spring Data JPA, wat het in feite vrij eenvoudig maakt om te doen. Zie hier in de naslaggids over het beperken van resultaten op basis van een zoekopdracht. In uw geval zou de volgende zoekmethode precies doen wat u wilt.
findFirstByOrderById();
Je zou ook een Pageable
. kunnen gebruiken argument met uw vraag in plaats van een LIMIT
clausule.
@Query("SELECT s FROM Students s ORDER BY s.id DESC")
List<Students> getLastStudentDetails(Pageable pageable);
Doe dan in je oproepcode zoiets als dit (zoals uitgelegd hier in de referentiegids).
getLastStudentDetails(PageRequest.of(0,1));
Beide zouden hetzelfde resultaat moeten opleveren, zonder dat je je toevlucht hoeft te nemen tot gewone SQL.