我试图根据我提供的ID从数据库中返回(或获取)所有记录。我使用JPA并且我知道findAll()
方法,但它返回所有记录而没有任何标准,我创建了一个自定义查询,它只返回表中的唯一值,但我想要根据标准返回所有记录。
例如,findAllByUserID(String UserID)
方法应该返回基于UserID
而不只是一个的所有记录。
我感谢任何帮助或建议。
由于
答案 0 :(得分:3)
看看文档。在那里,您将找到可用于在存储库接口中声明方法的关键字,这些方法将生成相应的查询: https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#jpa.query-methods
在您的情况下:如果userID是您实体的属性,您可以添加方法
List<YourEntity> findByfindAllByUserID(String userId)
到您的存储库界面。
答案 1 :(得分:1)
首先,请确保您在选择查询中未使用任何汇总功能,例如DISTINCT()
然后确保实现该查询的方法返回了您所需结果的列表。
这里的外观如何:
@Query("select t from table t where t.code = ?1")
List<Result> findAllByUserID(String UserID);