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不起作用的问题。

相关内容

热门资讯

一秒答解!WPK辅助挂多功能透... 一秒答解!WPK辅助挂多功能透视工具,切实是真的有挂(今日头条)WPK辅助器是一种具有地方特色的麻将...
科技新动态!德扑圈辅助挂多功能... 科技新动态!德扑圈辅助挂多功能透视工具,一贯有挂(有挂方针)1、每一步都需要思考,不同水平的挑战德扑...
揭秘攻略!德扑圈辅助挂多功能透... 揭秘攻略!德扑圈辅助挂多功能透视工具,原来是真的有挂(有挂秘籍)德扑圈能透视中分为三种模型:德扑圈模...
玩家亲测!智星菠萝德州辅助挂多... 玩家亲测!智星菠萝德州辅助挂多功能透视工具,确实是真的有挂(有挂工具)1、用户打开应用后不用登录就可...
热点推荐!微扑克辅助挂多功能透... 热点推荐!微扑克辅助挂多功能透视工具,好像有挂(有挂方法)小薇(辅助器软件下载)致您一封信;亲爱微扑...
重大科普!智星菠萝德州辅助挂多... 重大科普!智星菠萝德州辅助挂多功能透视工具,竟然真的是有挂(有挂存在)1、操作简单,无需智星菠萝德州...
分享一款!aapoker辅助挂... 分享一款!aapoker辅助挂多功能透视工具,原来存在有挂(有挂解密)1、点击下载安装,aapoke...
必备科技!红龙poker辅助挂... 必备科技!红龙poker辅助挂多功能透视工具,都是存在有挂(确实有挂)红龙poker是不是有人用挂微...
9分钟了解!红龙poker辅助... 9分钟了解!红龙poker辅助挂多功能透视工具,竟然存在有挂(有挂工具)1)红龙poker有没有挂:...
今日头条!微扑克辅助挂多功能透... 今日头条!微扑克辅助挂多功能透视工具,本来存在有挂(有挂猫腻)1、微扑克辅助软件下载优化,微扑克底牌...