MySQL-群组未读消息标记的问题
app应用,在设计数据库时,被群组消息的未读标记难住了。
像两个人聊天的话,在每条消息记录中弄个“对方是否已读”的字段,用来标记对方有没有读取就能解决问题;但是群组里的消息没办法做到这样进行标记群里的每个人都是否已读。难道还要做一个关联表,专门记录每个人对这条消息的“是否已读”?那感觉数据条目量要吓死人啊。求巧妙解决方案!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
首先让消息有个自增的ID(或发布时间),同时记录每个用户在每个群组里最后读到的消息ID(或时间),查询的时候只查比最后ID(或时间)大的消息,如果结果集为空就没有未读消息,反之有未读消息。确定用户读了消息之后,就可以调整记录的最后ID(或时间)。
这样就能避免记录每一条消息读取状态。