0

以下代码给出了数据库中的所有值,甚至是重复值。

return database.query("contacts", new String[] {"_id", "name"}, 
     null, null, null, null, "name");

我怎样才能从上面的代码中得到不同的值

4

3 回答 3

1

使用将布尔值作为第一个参数的重载query_id并从选择中删除该列:

return database.query(true, "contacts", new String[] {"name"}, 
                      null, null, null, null, "name", null);

_id列应该是唯一的,因此将其包含在您的查询中将导致 distinct 无效。

于 2013-02-15T11:39:02.183 回答
1

使用 distinct 关键字,这将从数据库返回唯一记录。

db.rawQuery("Select DISTINCT from table_name",null);
于 2013-02-15T11:53:59.700 回答
0

使用这个查询:

public Cursor query (boolean distinct, String table, 
                 String[] columns, String selection, 
                 String[] selectionArgs, String groupBy, 
                 String having, String orderBy, String limit)

将第一个参数设置为 true 并且不要在选择中使用你的主键。它永远是独一无二的……

于 2013-02-15T11:46:05.747 回答