How would I write SELECT TOP 25 sql query in Spring data repository
I would say you need
List<Arcust> findTop25ByArcustnoLessThanOrderByArcustnoDesc(String arcustno);
That will use JPA and will probably work on all databases, will work starting SPRING JPA 1.7.0 (Evans release train)
I implement CrudRepository and not JpaRepository
I'm not sure Rakesh's answer is correct. He seems to be writing SQL, not JPA query syntax.
I tried using LIMIT in a JPA @Query and got an exception saying "limit" is not recognized.
@Query("select d from Device d where d.deviceName like CONCAT('%', :deviceName, '%') and d.deviceId not in :notList ORDER BY deviceName DESC Limit 1001")
Caused by: java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: Limit near line 1, column 162
Also, refer to this answer from Hari Shankar which says JPA doesn't support "limit": JPA doesn't support "limit"
# Pure SQL
Use "Limit"
SELECT * FROM ARCUST_BIG
WHERE arcustno<='300000' ORDER BY arcustno DESC Limit 0, 25
Note: JPA supports creation of the Native query by using method createNativeQuery() OR by using the annotation @NamedNativeQuery JPA Native Query select and cast object object
# JPA
List<Arcust> findTop25ByArcustnoLessThanOrderByArcustnoDesc(String arcustno);