2015-07-12 15 views
10

Nie mogę znaleźć składni wywołania .query. Muszę zaznaczyć wszystkie rekordy, które odpowiadają określonej kolumny, które nie mają zerową lub pustą wartość dla drugiej (innej) kolumnyKwerenda SQLite dla Androida, dla której kolumna nie jest pusta i nie jest pusta

moja najlepsza próba:

Cursor cursor = mDatabase.query(DatabaseOpenHelper.TABLE_ROOMS, mAllColumns, 
    DatabaseOpenHelper.KEY_ROOM_HOSPITAL_ID 
    + " =? AND " + DatabaseOpenHelper.KEY_ISO + " IS NOT NULL OR NOT ?", 
    new String[]{String.valueOf(hospitalId), ""}, null, null, null); 

ten powraca wszelkie rekordy. Jeśli użyję AND w miejsce OR, to zwraca on rekordy odpowiadające hospitalId, ale ignoruje część NOT NULL OR NOT "".

Jakieś wskazówki? Czy powinienem używać wywołania rawQuery? Dziękuję Ci.

Odpowiedz

26

wierzę poprawna składnia byłoby:

AND key IS NOT NULL AND key != "" 

gdzie key to kolumna

Powiązane problemy