Stai usando JPQL che non supporta la limitazione di risultati come questo. Quando usi JPQL nativo dovresti usare setMaxResults
per limitare i risultati.
Tuttavia stai usando Spring Data JPA che sostanzialmente lo rende abbastanza facile da fare. Vedi qui nella guida di riferimento su come limitare i risultati in base a una query. Nel tuo caso, il seguente metodo trova farebbe esattamente quello che vuoi.
findFirstByOrderById();
Potresti anche usare un Pageable
argomento con la tua query invece di un LIMIT
clausola.
@Query("SELECT s FROM Students s ORDER BY s.id DESC")
List<Students> getLastStudentDetails(Pageable pageable);
Quindi nel codice di chiamata fai qualcosa del genere (come spiegato qui nella guida di riferimento).
getLastStudentDetails(PageRequest.of(0,1));
Entrambi dovrebbero produrre lo stesso risultato, senza dover ricorrere a un semplice SQL.