以下代码给出了数据库中的所有值,甚至是重复值。
return database.query("contacts", new String[] {"_id", "name"},
null, null, null, null, "name");
我怎样才能从上面的代码中得到不同的值
使用将布尔值作为第一个参数的重载query
_id
并从选择中删除该列:
return database.query(true, "contacts", new String[] {"name"},
null, null, null, null, "name", null);
该_id
列应该是唯一的,因此将其包含在您的查询中将导致 distinct 无效。
使用 distinct 关键字,这将从数据库返回唯一记录。
db.rawQuery("Select DISTINCT from table_name",null);
使用这个查询:
public Cursor query (boolean distinct, String table,
String[] columns, String selection,
String[] selectionArgs, String groupBy,
String having, String orderBy, String limit)
将第一个参数设置为 true 并且不要在选择中使用你的主键。它永远是独一无二的……