我的应用程序中有前 10 名用户的 RecyclerView。我用一个游标填充它,该游标从 sql 中的 SQL VIEW 读取,该游标从通过外键相关的不同表中聚合。我想重新编写 SQLite 样板以使用新的 Room 库。但是,我不知道如何在 Room 中实现 SQL VIEW。 DAO 似乎只适用于实体(表),或者我可能只是遗漏了一些东西。
最佳答案
您还可以使用从 DAO 连接多个表的 POJO。来自Room documentation :
@Dao
public interface MyDao {
@Query("SELECT user.name AS userName, pet.name AS petName "
+ "FROM user, pet "
+ "WHERE user.id = pet.user_id")
public LiveData<List<UserPet>> loadUserAndPetNames();
// You can also define this class in a separate file, as long as
// you add the "public" access modifier.
static class UserPet {
public String userName;
public String petName;
}
}
这也适用于聚合函数。
关于android - 在新的 Room 持久性库中创建等效的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46030625/