Android Room Dao:OrderBy CASE不起作用。
创始人
2024-08-15 10:00:54
0次

在Android Room中使用OrderBy CASE语句时,可能会遇到无法正常工作的问题。为了解决这个问题,可以尝试以下解决方法:

  1. 使用@Query注解手动编写自定义的SQL查询语句,而不是使用Room的自动生成查询。这样可以更灵活地控制查询逻辑。例如:
@Dao
public interface UserDao {
    @Query("SELECT * FROM User ORDER BY CASE WHEN :sort = 'name' THEN name END")
    List getUsersSortedByName(String sort);
}
  1. 使用Room的SortingMapping类,它可以在查询结果中对结果进行排序。首先,创建一个自定义的SortingMapping类来实现排序逻辑:
public class UserSortMapping {
    public String sortField;
    public String name;

    public UserSortMapping(String sortField, String name) {
        this.sortField = sortField;
        this.name = name;
    }
}

然后,在查询方法中使用SortingMapping类来进行排序:

@Dao
public interface UserDao {
    @Query("SELECT name AS name, name AS sortField FROM User ORDER BY :sortField")
    List getUsersSortedByName(String sort);
}

这样,就可以根据传入的排序字段进行排序。

这些解决方法可以帮助您解决Android Room Dao中使用OrderBy CASE不起作用的问题。

相关内容

热门资讯

黑科技外挂!竞咪21点(外挂)... 黑科技外挂!竞咪21点(外挂),嵊州麻将原来有透视挂脚本(证实有辅助挂)1、嵊州麻将模拟器是什么优化...
黑科技辅助!中至江西(辅助),... 黑科技辅助!中至江西(辅助),新接水管一贯是有透视挂技巧(今日头条辅助)1、完成中至江西有辅助插件,...
黑科技透视器!鑫创娱乐(透视器... 黑科技透视器!鑫创娱乐(透视器),财神到本来真的有透视挂app(有辅助挂解惑)1、进入到鑫创娱乐是否...
黑科技辅助!欢乐赢三张(辅助)... 黑科技辅助!欢乐赢三张(辅助),中至南昌卧龙真是真的有透视挂技巧(真的有辅助挂)1、打开软件启动之后...
黑科技作弊器!17麻将(作弊器... 黑科技作弊器!17麻将(作弊器),心悦麻将真是是真的有透视挂脚本(确实有辅助挂)暗藏猫腻,小编详细说...
黑科技作弊器!沐星互娱(作弊器... 黑科技作弊器!沐星互娱(作弊器),扑克棋牌插件总是真的有透视挂app(有辅助挂解惑)1、玩家可以在扑...
黑科技透视挂!八闽掌上麻将(透... 黑科技透视挂!八闽掌上麻将(透视挂),紫锋麻将果然真的有透视挂脚本(详细教程辅助)1)八闽掌上麻将辅...
黑科技开挂!华彩棋牌(开挂),... 黑科技开挂!华彩棋牌(开挂),奉化八扣一贯是真的有透视挂技巧(有辅助挂分析)奉化八扣是不是有人用挂微...
黑科技作弊器!人海大厅(作弊器... 黑科技作弊器!人海大厅(作弊器),捉住捣蛋鸡本来存在有透视挂app(有辅助挂规律)暗藏猫腻,小编详细...
黑科技外挂!同城游牛鬼(外挂)... 黑科技外挂!同城游牛鬼(外挂),大好棋牌一直有透视挂教程(竟然有辅助挂)1、下载好同城游牛鬼脚本下载...