android - 为什么 Cursor 丢失了 sqlite 的排序 DESC

标签 android sqlite

我在 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/

相关文章:

java - DataSnapshot 同时是满的和空的?

python - 如何使用 DetailView 中 PK(主键)字段以外的不同字段进行查询

sql - 使用 Node.js 和 sqlite3 添加具有多列的行

c# - 仅在使用 SQLite 时不填充子对象(适用于 SQL Server)

android-gallery 如何设置被选中的 child 的位置

android - 我怎样才能得到这种格式的 TimePicker 的时间 -> "08:00:00"?

java - 如何使用 Glide 通过字节数组加载图像?

Android Activity 不断恢复保存的实例状态

android - ORMLite 搜索具有最常见列的行

android - 使用 SQLiteQueryBuilder 连接两个表