sql >> Databasteknik >  >> RDS >> Mysql

Vad är LIMIT-klausulalternativet i JPQL?

Du använder JPQL som inte stöder begränsning av resultat som detta. När du använder inbyggt JPQL bör du använda setMaxResults för att begränsa resultaten.

Men du använder Spring Data JPA vilket i grunden gör det ganska enkelt att göra. Se här i referensguiden om hur man begränsar resultat baserat på en fråga. I ditt fall skulle följande, hitta metoden göra precis vad du vill.

findFirstByOrderById();

Du kan också använda en Pageable argument med din fråga istället för en LIMIT klausul.

@Query("SELECT s FROM Students s ORDER BY s.id DESC")
List<Students> getLastStudentDetails(Pageable pageable);

Gör sedan något så här i din anropskod (som förklarat här i referensguiden).

getLastStudentDetails(PageRequest.of(0,1));

Båda bör ge samma resultat, utan att behöva tillgripa vanlig SQL.



  1. Hur man får alla tabeller som har en primär nyckelbegränsning skapad i SQL Server Database - SQL Server / TSQL Tutorial 57

  2. Hur man läser och återställer AUTO_INCREMENT i MySQL

  3. Använda SolarWinds Serv-U på Linux med en SQL Server Authentication Database

  4. JDBC MySQL-anslutning med Unix Socket