2017-09-04 38 views
1

我的應用程序中有前10名用戶的RecyclerView。我用從SQL查詢中讀取的遊標來填充它,這些SQL查詢從外鍵相關的不同表中聚合而來。我想重新編寫SQLite鍋爐板以使用新的房間庫。但是,我不知道SQL VIEW如何在Room中實現。 DAO似乎只適用於實體(表格),或者我只是想念一些東西。CREATE VIEW相當於新房間持久性庫

+1

我已經刪除了問題更新的承諾,因爲根據我們的經驗,問題通常會將這些消息留在長期。一般來說,最好暫緩發佈一個問題,直到您擁有了向讀者展示所需的所有內容。 – halfer

+1

@halfer是的,我想我可以在這個問題上跳起來,然後今天完成它,但在未來,我會堅持一切準備就緒。 – flopshot

回答

2

您還可以使用連接多個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; 
    } 
} 

這也適用於聚合功能。