spring - Sort.of 中的 Spring 自定义排序
问题描述
有没有办法使用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
结果,因此案例不会按预期工作。
您可以使用Sort
in对象Pageable
来定义您想要的排序。这将要求您使用类似的东西PageRequest
来实现它。
或者您可以使用在存储库中传递Sort
对象,如下所示:
fun findLiveAndFuture(pageable: Pageable, sort: Sort): Page<Livestream>
推荐阅读
- javascript - 如何在 div onhover 中的图像上覆盖背景颜色
- c# - 在 ASP.NET MVC 5 的客户端 PC 中从 Crystal Report 打印
- python - 如何将计数器编号附加到熊猫列中每个重复的字符串值?
- azure - 通过 Microsoft Graph 共享 O365 日历
- java - Hibernate - 一对一关系单表继承
- android - 意式浓缩咖啡意图错误:想要匹配 1 个意图。实际匹配 0 个意图
- javascript - 在 rxjs 中创建树形数据视图的正确方法
- javascript - 有没有办法在搜索栏中使用 php 调用模式?
- python-2.7 - 如何创建一个新字典,其中一个字典的值作为键,另一个字典的值作为值
- javascript - 使用来自 AJAX 请求的内容填充 Bootstrap 模式