继承了 PagingAndSortingRepository , 这个接口提供了 Page<t> findAll(Pageable var1); 方法 我需要自定义 sql 然后返回字段是从两个表中挑选出来的. sql 类似这样的:</t>
select a.name ax , a.cd cd , b.name ax from a
left join b on b.id = d.bid
我需要在上面 sql 返回结果的基础上分页和排序, 请问大家怎么处理这个问题?
1
ebony0319 OP 老哥们在么
|
2
lllpla 2019-06-26 11:42:37 +08:00 1
|
3
wdmx007 2019-06-26 16:22:24 +08:00 1
试试在 @Query 里面写 JPQL (自定义字段+join ) ,
然后在 SpringDataJPA 的 Repository 接口定义方法 Page<Object[]> findXXX( ); OrderRefundRecord @OnoToOne Order 参考一下这个 ```java @Query("select R.remark, R.reason, O.id,O.contactMobile from OrderRefundRecord R left join R.order O where R.order.contactName = ?1 ") Page<Object[]> findTest(String name,Pageable pageable); ``` |
4
wdmx007 2019-06-26 16:28:04 +08:00 1
这里面提到不用写为 Object[] ,可以定义 VO 来接收数据,待验证
https://blog.csdn.net/phapha1996/article/details/78994395 |