0

我将来自数据库查询的数据显示在ListView. 我的问题是:我可以从查询中订购我的数据,然后将此订购的数据存储在我的游标对象中吗?还是我必须订购ListView

即我可以在以下查询中按名称排序数据吗?

Cursor c = ourDatabase.query(DATABASE_TABLE, columns, KEY_ROWID + "=" + passId, null, null, null, null);
4

2 回答 2

5

查询中的最后一个参数表示order by

例子:

Cursor c = ourDatabase.query(DATABASE_TABLE, columns, KEY_ROWID + "=" + passId, null, null, null, coulmnName+" DESC");
于 2013-01-15T20:23:56.977 回答
2
public Cursor query (String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy, String limit)

在 API 级别 1 中添加 查询给定的表,返回结果集上的游标。

参数 table 要编译查询的表名。columns 要返回的列的列表。传递 null 将返回所有列,不鼓励这样做以防止从存储中读取不会使用的数据。selection 一个过滤器,声明要返回哪些行,格式化为 SQL WHERE 子句(不包括 WHERE 本身)。传递 null 将返回给定表的所有行。selectionArgs 您可以在选择中包含 ?s,它将被 selectionArgs 中的值替换,以便它们出现在选择中。这些值将绑定为字符串。groupBy 声明如何对行进行分组的过滤器,格式化为 SQL GROUP BY 子句(不包括 GROUP BY 本身)。传递 null 将导致行不被分组。如果正在使用行分组,则使用过滤器声明要包含在游标中的行组,格式化为 SQL HAVING 子句(不包括 HAVING 本身)。传递 null 将导致包含所有行组,并且在不使用行分组时是必需的。orderBy 如何对行进行排序,格式为 SQL ORDER BY 子句(不包括 ORDER BY 本身)。传递 null 将使用默认排序顺序,可能是无序的。limit 限制查询返回的行数,格式为 LIMIT 子句。传递 null 表示没有 格式化为 LIMIT 子句。传递 null 表示没有 格式化为 LIMIT 子句。传递 null 表示没有

于 2013-01-15T20:30:59.850 回答