Как запустить несколько запросов AND с Android Room? - PullRequest
3 голосов
/ 12 мая 2019

У меня есть пример использования, который требует, чтобы все поставленные условия были выполнены. Условия предоставляются пользователями, поэтому не известны до времени выполнения. Ex.

SELECT * FROM FOO WHERE [CONDITION 1] AND [CONDITION 2]...AND [CONDITION N]

Есть ли простой способ выразить это в Android Room DAO @Query ()? Я сейчас использую 2.1.0-beta01

1 Ответ

2 голосов
/ 12 мая 2019

Вы должны использовать Raw Query :

@Dao
 interface RawDao {
     @RawQuery
     User getFoo(SupportSQLiteQuery query);
 }

 SimpleSQLiteQuery query = new SimpleSQLiteQuery("SELECT * FROM Foo WHERE [CONDITION 1] AND [CONDITION 2]...AND [CONDITION N]");
 Foo foo = rawDao.getFoo(query);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...