我想在
spring-data中使用方法名的sql select.
选择应按价格排序.
@Entity public class Product { int name; BigDecimal price; } interface ProductRepository extends CrudRepository<Product,Long> { Product findFirstByNameOrderByPriceAsc(String name); }
结果:
org.springframework.dao.IncorrectResultSizeDataAccessException: result returns more than one elements; nested exception is javax.persistence.NonUniqueResultException: result returns more than one elements
为什么?我正好使用findFirst()方法,只要找到多个结果,就可以获得最高的结果.
解决方法
从spring-data-jpa-1.7.1.RELEASE开始,可以使用Top和First关键字.见
Spring Data JPA Changelog和
Limiting query results