我在 sqlite 中有一个查询
String[] args = { Report_DATETIME,Report_DATETIME, EMSUnitCode };
String sql = "Select * from TR_ReportingAll Where (Report_DATETIME<? or ( Report_DATETIME=? and EMSUnitCode!=?)) order by Report_DATETIME,EMSUnitCode DESC Limit 10";
mCursor = database.rawQuery(sql, args);
为什么mCursor的值是ASC?当我得到 mCursor.moveToNext 时。
最佳答案
您的排序标准是 Report_DATEIME ASC
,然后,所有具有相同 Report_DATEIME 的项目都按 EMSUnitCode DESC
排序。 DESC
并不适用于所有 ORDER BY
字段,但仅适用于您为其设置的字段,如果未另外指定,则 ASC
是默认顺序。因此,如果您希望日期降序,请将您的顺序更改为 order by Report_DATETIME DESC,EMSUnitCode DESC
关于android - 为什么 Cursor 丢失了 sqlite 的排序 DESC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12195769/