Room Queries может возвращать POJO (не @Entity
), и поэтому вы можете сделать временную модель для вашего DAO.
Как я уже спрашивал в комментариях, я не знаю, чего вы пытаетесь достичь (как и какую ценность вы хотите получить от этих запросов).
Но, надеюсь, этот пример может помочь:
YourDao.java
@Query("SELECT name AS nameItem, (count * amount) AS countItem FROM basket_items")
Flowable<List<CountedBasketItem>> getAllCounted();
static class CountedBasketItem {
String nameItem;
Long countItem;
}
Дополнительный ответ
То, что вы хотите вернуть Список и общая сумма не представляется возможным по запросу. SUM - метод агрегации, вы агрегируете список.
Итак, есть 2 варианта, которые вы можете сделать:
Используйте GROUP BY
в своем запросе
Или выполните те 2 Flowable и получите результат.