sql >> Databasteknik >  >> RDS >> SQLite

SELECT DISTINCT Fungerar inte Android SQLite

LÖST!

Så SQLiteQueryBuilder-metoder som returnerar en markör tillåter inte Boolean parameter direkt.

Men efter att ha läst klassanteckningarna märkte jag metoden setDistinct och tillämpade den på SQLiteQueryBuilder.

Nu fungerar det och ger mig bara en unik post för varje stat, precis vad jag försökte göra. Jag behövde ta bort de andra kolumnerna och bara fokusera på staten, men det är en annan fråga/lösning som inte är relaterad till denna fråga. Det räcker med att säga att jag bara var tvungen att fokusera på kolumntillståndet och använda setDistinct till den kolumnen bara för att få önskat resultat.

Här är den färdiga koden:

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. Hur man skapar VARRAYs som databasobjekt i Oracle Database

  2. Designa en databas för ett rekryteringssystem

  3. Hur man kontrollerar om en lagrad procedur finns innan den skapas

  4. 3 sätt att hitta positionen för en delsträng i en sträng i MySQL