问题描述
我正在实现一个像Facebook这样的聊天系统,我有两个表,一个是消息,一个是对话:
conversations
id | peoples | updatedAt
1 [user1,user2] Today 8:10 PM
2 [user1,user2] Today 9:03 PM
3 [user1,user2] Today 5:01 PM
4 [user1,user2] Today 5:01 PM
5 [user1,user2] Today 5:01 PM
6 [user1,user2] Today 4:01 PM
当用户发送邮件时,我会在当前时间更新updatedAt
的字段conversations
,以便查询最新的会话,但是这里的问题是如何在查询之后继续查询最新的会话那?例如,首先我将查询两个最近的对话,如您所见,这是返回ID为2 and 1
的对话,然后我保存ID为updatedAt
的{{1}}值(该值为1
),因此我可以继续查询条件为Today 8:10 PM
的最新会话,并且仅像第一次一样进行2次会话,它将返回ID为{updatedAt: {$lte: Today 8:10 PM}
的会话,并保存3,4
字段的ID updatedAt
(值是4
),在相同条件下继续查询:Today 5:01 PM
将返回ID为{updatedAt: {$lte: Today 5:01 PM}
,ID为3,5
的对话在我不需要它之前,如何避免这种情况?我使用mongodb作为数据库
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)