Sql 在SpringDataJPA中,如何通过不同的列和列数获取数据?
我有一个postgresql表,如下所示:Sql 在SpringDataJPA中,如何通过不同的列和列数获取数据?,sql,postgresql,spring-boot,spring-data-jpa,Sql,Postgresql,Spring Boot,Spring Data Jpa,我有一个postgresql表,如下所示: ------------------+------------------------+------------------------ id + username + sessionId -------------------------------------------+------------------------ 1 + admin
------------------+------------------------+------------------------
id + username + sessionId
-------------------------------------------+------------------------
1 + admin + sfs02asdf02sadf92sfda
2 + admin + 2adfasdfhjlweashfuwaf
3 + ali + 23asfdadsfhkjiwuqeoas
4 + admin + aadfhlajdfjkasdh27ask
5 + ali + hadsuiadsfhkioasdkfha
现在我想按如下方式获取数据:
页面:1,页面大小:n:
[
['admin', 3, 'sfs02asdf02sadf92sfda'],
['ali', 2, '23asfdadsfhkjiwuqeoas'],
...
]
如何在SpringDataJPA中获取如下数据
注意:第一项是
用户名
,第二项是用户名计数
,第三项是第一个会话ID
,如果您使用的是Spring数据JPA,我希望您了解分页实现。现在,对于查询,您可以编写本机查询
,这将进入分页实现
@Query(value = "select 'expected value' * from Table", nativeQuery = true)
Page<Map<String, Object>> findSessionId(@Param("userId") Integer userId, Pageable pageable);
@Query(value=“从表中选择‘预期值’*”,nativeQuery=true)
Page findSessionId(@Param(“userId”)整数userId,可分页;
那么,
您可以使用一个函数来访问输出值并返回控制器
棘手的部分是,如果您编写了正确的SQL,则无需在服务层中执行任何操作,或者您应该在服务层中执行一些变通方法。我将使用JdbcTemplate进行此SQL聚合查询。