有什么方法可以将Sort.of
与这种排序一起使用吗?
@Query("SELECT l FROM Livestream l WHERE l.status IN ('LIVE', 'FUTURE') ORDER BY CASE WHEN l.status = 'LIVE' THEN -1 ELSE 0 END ASC")
fun findLiveAndFuture(pageable: Pageable): Page<Livestream>
我不确定最后case
的用法,因为结果很可能同时有LIVE
和FUTURE
结果,所以这个案例不会像预期的那样工作。
您可以使用Pageable
中的对象Sort
来定义您想要的排序。这将需要你使用类似PageRequest
的东西来实现它
或者,您可以使用传递存储库中的Sort
对象,如下所示:
fun findLiveAndFuture(pageable: Pageable, sort: Sort): Page<Livestream>