У меня есть база данных комнат с таблицей «Записи», где у меня есть столбцы value(int)
, cat_id(int)
и date(Date)
.
Я хочу получить сумму всех записей текущего месяца и всех записей текущей недели. Но на выбор:
@Query("SELECT sum(value) FROM Entry WHERE cat_id = :cat_id AND WEEK(date, 5) = WEEK(:date, 5) AND YEAR(date) == YEAR(:date)")
float getValueThisWeekByCatId(int cat_id, Date date);
@Query("SELECT sum(value) FROM Entry WHERE cat_id = :cat_id AND MONTH(date) = MONTH(:date) AND YEAR(date) == YEAR(:date)")
float getValueThisMonthByCatId(int cat_id, Date date);
не работает.
Это ошибка:
Проблема с запросом: [SQLITE_ERROR] Ошибка SQL или отсутствует
база данных (такой функции нет: WEEK)
float getValueThisWeekByCatId (int cat_id, Date date); То же с функцией МЕСЯЦ
Есть ли другой способ выбора?