我有MongoDB集合来存储帖子。对于每个帖子,我收集用户与此帖子的互动(例如,点击,完整阅读,显示)。 我不确定查询收集的正确方法是什么,以查找上周没有向给定用户显示的帖子。 现在结构看起来像:
id: ...
createdAt: ...
text: ...
...
interactions:
reads: []
clicks: []
displays: [
0: {
user: ObjectId,
date: 2018-06-13 01:00:00
},
1: {
user: ObjectId,
date: 2018-06-12 01:00:00
},
]
我想知道是否可以lastDisplay < given date
作为find()
查询的一部分进行过滤。
我想到的其他解决方案是:
lastDisplay
,但我不确定是否真的需要这么多冗余使用这种过滤获取数据的首选解决方案是什么?