2016-07-03 6 views
0

Один из моих столбцов имеет два разных значения: 1 и 0. Я хочу подсчитать, сколько 1 и сколько 0 находится в моей колонке и просто отображать его в журнале, но нижеследующий код не работает.Количество 2 разных значения в 1 колонке

c = db.rawQuery("SELECT " + 
    "SUM(CASE WHEN my_column = 0 THEN 1 ELSE 0 END) theZero, " + 
    "SUM(CASE WHEN my_column = 1 THEN 1 ELSE 0 END) theOne FROM " + MY_TABLE, null); 

    if(c.moveToFirst()){ 
     while(c.moveToNext()){ 
      Log.w("THEZERO", String.valueOf(c.getInt(0))); 
      Log.w("THEONE", String.valueOf(c.getInt(1))); 
     } 
    } 

У меня есть 6 данных 1 и 4 данные 0 в my_column и я ожидаю отображения:

THEZERO - 4 
THEONE - 6 
+0

Вы попробовали «SELECT SUM (my_column) FROM my_table WHERE my_column = 0"? Почему вы используете этот запрос? Можете ли вы предоставить нам, какой результат возвращает ваш внутренний запрос? –

+0

Нет результата, я окружил его 'Try/Catch' No Error и No Result. –

+0

На самом деле я просто пытаюсь выполнить запрос в MYSQL, и он работает. Это неправильно? –

ответ

0

Попробуйте это. Надеюсь, что это работает. (Я не пробовал).

c = db.rawQuery("SELECT " + 
       "SUM(my_column = 0) theZero, " + 
       "SUM(my_column = 1) theOne FROM " + MY_TABLE, null); 

if(c.moveToFirst()){ 
     Log.w("THEZERO", String.valueOf(c.getInt(0))); 
     Log.w("THEONE", String.valueOf(c.getInt(1))); 
} 
+0

Спасибо !!! Работает!!! –

Смежные вопросы