【发布时间】:2019-05-05 14:54:36
【问题描述】:
我有一个包含以下文档的集合:
{
"_id" : "ThisIsASampleId_rand12345",
"timestamp" : ISODate("2019-04-30T10:53:34.515Z"),
"mySpecialId" : "specialId_12345",
"status" : "error",
}
我的目标是找到所有带有{status: 'error'} 的文档,只要不存在具有相同mySpecialId 和status 'success' 的后续文档。
显然我可以做到db.jobs.find({status: 'error'}),但在那之后,我就迷路了。
我是否需要在聚合管道中使用"mySpecialId" 作为本地和外部字段,并使用包含{$gt: {timestamp: $PREVIOUS_TIMESTAMP}} 之类的$match 在同一集合中执行$lookup?不知何故,这感觉不对。
有没有更简单/更好/更优雅的方法来做到这一点?
【问题讨论】:
标签: mongodb mongodb-query