【发布时间】:2021-02-07 20:19:59
【问题描述】:
我正在开发一个聊天应用程序,其中消息保存在离线房间数据库中
我有两张桌子
Contact
- contact_id
- contact_name
- about
ChatMessage
- contact_id
- content
- received_at
在聊天屏幕上,我通过在联系人表中查询来显示最近的聊天 但我试图显示最近的聊天,所以更好的方法是查询 ChatMessage 表获取唯一的最近消息并检索姓名等联系信息
所以我实施了一个非常糟糕的方法(可能是最糟糕的),其中包括
1.获取所有聊天消息
2.按contact_id与最近聊天分组
3.在for循环中查询并获取联系人行并将名称附加到主对象列表中
4.在回收站视图中显示列表
我想知道是否有更好的方法来做到这一点
我认为关系或联接可以提供帮助,但我不知道它们或它们在房间数据库中的实现
任何帮助将不胜感激
【问题讨论】:
标签: android sql database sqlite android-room