SQLite, Preferences, файлы, SD, Content Provider, XML, JSON
-
Elek
- Сообщения: 55
- Зарегистрирован: 29 май 2012, 09:57
Сообщение
Elek » 05 дек 2015, 21:09
Здравствуйте,
Не получается найти способ сгруппировать элементы из базы данных по дате.
Например сделать выборку и сгруппировать строки по дням или неделям.
В данный момент я делаю выборку по категории :
Код: Выделить всё
public Cursor getAmountByCategory(int category){
Cursor cursor = getReadableDatabase().rawQuery("SELECT sum(amount) from " + SOME_TABLE + " WHERE "
+ CATEGORY_VALUE + "=" + category, null);
return cursor;
}
Дата хранится в базе данных в числовом значении.
Есть ли возможность сгруппировать строки под дате ?
Спасибо.
-
Foenix
- Сообщения: 4201
- Зарегистрирован: 20 окт 2012, 12:01
Сообщение
Foenix » 07 дек 2015, 20:55
1) для группировки используется приложение group by
2) дата должна быть в целом формате (т.е. целым числом)
-
Elek
- Сообщения: 55
- Зарегистрирован: 29 май 2012, 09:57
Сообщение
Elek » 08 дек 2015, 00:33
Вы не до конца поняли мой вопрос.
Мне надо было сгрупировать не просто по дате, а например по месяцу, неделе или дню.
В данный момент я храню дату в виде DATETIME, в таблице.
Группирую значения под данному запросу:
Код: Выделить всё
SELECT strftime('%m', date) as valMonth
FROM expenses_date
GROUP BY valMonth
Возможно есть другой способ, но я так и не нашел.