Комнатный оператор SQLite select с strftime не возвращает никакого результата - PullRequest
0 голосов
/ 16 июня 2019

У меня есть приложение для Android с базой данных, основанной на библиотеке комнаты.

public class Entry {

    public Entry(int cat_id, Date date, float value, String comment) {
        this.date = date;
        this.value = value;
        this.cat_id = cat_id;
        this.comment = comment;
    }
    @PrimaryKey(autoGenerate = true)
    public int entry_id;

    public final Date date;

    public final float value;

    public final int cat_id;

    public final String comment;
}

В EntryDao у меня есть два оператора выбора, которые не работают:

@Query(("SELECT sum(value) FROM Entry WHERE cat_id = :catId AND strftime('%Y', date) LIKE :year"))
float getSumByCatIdAndYear(int catId, int year);

@Query(("SELECT sum(value) FROM Entry WHERE cat_id = :catId AND strftime('%Y', date) LIKE :year AND strftime('%m', date) LIKE :month"))
float getSumByCatIdAndYearAndMonth(int catId, int year, int month);

Не знаю почему, но всегда возвращает 0.0 Я думаю, что сделал что-то не так с функцией strftime, но я не уверен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...