使用多个值对数据库查询进行排序

时间:2011-11-04 08:09:17

标签: java android sqlite listview

我有以下代码行来查询数据库,其值为“ntd”以按日期顺序排序。

public Cursor fetchAllReminders( String maybe) {

    return mDb.query(DATABASE_TABLE, new String[] {KEY_ROWID,
            NAME, START_DATE_TIME, NEXT_DATE_TIME, BILL_AMOUNT, OCC_AMOUNT, REF, NEXT_DATE_TIME_ACT, SUM_OCC, OCC_PERIOD, BIL_ACT, DATE_ACT, COUNTABLE, LAST, DDEBIT, ONE_OFF,ONE_OFF2 }, REF +"=?", new String[] { maybe }, null, null, "ntd", null);
}

我可以添加另一个值,因此它首先按布尔值排序,然后按日期值排序吗?

感谢

1 个答案:

答案 0 :(得分:1)

Android Developers DocumentationorderBy方法的SQLiteDatabase.query(...)参数描述如下:

  

如何对行进行排序,格式化为SQL ORDER BY子句(不包括   ORDER BY本身)。传递null将使用默认排序顺序,   这可能是无序的。

这意味着您可以使用任何有效的SQL ORDER BY子句,因此您应该能够传递要排序的列或表达式的逗号分隔列表,如下所示:

"some_boolean_column, ntd"