SQLite
 sql >> база данни >  >> RDS >> SQLite

SELECT DISTINCT Не работи Android SQLite

РЕШЕНО!

Така методите на SQLiteQueryBuilder, които връщат курсор, не позволяват Boolean параметър директно.

Въпреки това, след като прочетох бележките на класа, забелязах метода setDistinct и го приложи към SQLiteQueryBuilder.

Сега работи и ми дава само един уникален запис за всяко състояние, точно това, което се опитвах да направя. Трябваше да премахна другите колони и просто да се съсредоточа върху състоянието, но това е друг проблем/решение, което не е свързано с този въпрос. Достатъчно е да кажа, че трябваше да се съсредоточа само върху състоянието на колоната и да приложа setDistinct само към тази колона, за да получите желания резултат.

Ето попълнения код:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Намерете стойности, които не съдържат числа в SQLite

  2. Как да конвертирате в главни букви в SQLite

  3. Конвертирайте SQLite в JSON

  4. Защо продължителността е NULL за повтарящо се събитие в android?

  5. как да стартирам приложение с SQLite darabase на емулатор на Android Studio?