sql >> Database >  >> RDS >> SQLite

SELECTEER DISTINCT Werkt niet Android SQLite

OPGELOST!

Dus SQLiteQueryBuilder-methoden die een cursor retourneren, staan ​​de Boolean niet toe parameter direct.

Maar na het lezen van de lesnotities zag ik de methode setDistinct en toegepast op de SQLiteQueryBuilder.

Nu werkt het en krijg ik slechts één unieke vermelding voor elke staat, precies wat ik probeerde te doen. Ik moest de andere kolommen verwijderen en me alleen concentreren op de staat, maar dat is een ander probleem / oplossing die geen verband houdt met deze vraag. Het volstaat te zeggen dat ik me moest concentreren op alleen de kolomstatus en de setDistinct . moest toepassen alleen naar die kolom om het gewenste resultaat te krijgen.

Hier is de voltooide code:

public Cursor getData(){
    SQLiteDatabase db = getReadableDatabase();
    SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
    String [] sqlSelect = {"0 _id", "state"};
    String sqlTables = "Reefs";
    qb.setTables(sqlTables);
    qb.setDistinct(true);
    Cursor c = qb.query(db, sqlSelect, null, null, null, null, null);
    c.moveToFirst();
    return c;
}


  1. pgFincore 1.2, een PostgreSQL-extensie

  2. Krijg alle datums tussen twee datums in SQL Server

  3. De geschiedenis van databases

  4. Ga aan de slag met Apache Spark – Part 1