DB室,通过ASC或DESC作为参数

时间:2018-07-26 10:08:12

标签: android sqlite android-room

我已经建立了一个会议室数据库。并进行以下查询(按原样运行):

@Query("SELECT * FROM " + TABLE_REPORT
        + " WHERE " + COLUMN_CLASS_ID + " =:classID"
        + " ORDER BY CASE :orderByColumnName"
        + " WHEN 'maths' THEN maths"
        + " WHEN 'physics' THEN physics"
        + " WHEN 'history' THEN history"
        + " END"
        + " DESC")
List<ResultEntity> getClassResult(long classID, String orderByColumnName); // , String orderBy);

我要取消注释最后一行,并在函数中包含 orderBy 参数,并用“:orderBy” 替换“ DESC” 我可以按照 orderBy 排序的列表,即ASC或DESC。

我尝试做上面解释的事情。但这似乎不起作用。

显示的错误是:“ ASC,BETWEEN,COLLATE,DESC,IN,LIMIT,预期的逗号或分号,找到了:orderBy”

我该如何工作?预先感谢。

0 个答案:

没有答案