【问题标题】:Find all docs where field doesn't exists, plus if field exists apply condition查找字段不存在的所有文档,加上如果字段存在则应用条件
【发布时间】:2014-05-26 15:44:41
【问题描述】:

有没有办法进行如下查询:

  • 如果某个字段存在,它将对该字段应用条件,如果通过,它将添加返回文档并将其添加到结果中。
  • 并且如果该字段不存在,是否也会将文档添加到结果中?

最后我们会收到所有符合条件的文档AND所有不存在该字段的文档。

【问题讨论】:

标签: mongodb mongoose mongodb-query aggregation-framework


【解决方案1】:

这样的事情怎么样:

db.stackoverflow.find({
  $or: [
    { howmuch: { $exists:false } },
    { howmuch:5 }
  ]})

在 stackoverflow 集合中,这将找到所有没有 howmuch 字段的文档以及所有将 howmuch 设置为 5 的文档。

【讨论】:

  • 是的,就是这样。我走向了完全不同的方向。谢谢!
猜你喜欢
  • 2020-08-09
  • 2015-12-21
  • 2017-01-20
  • 2022-01-09
  • 2021-04-24
  • 1970-01-01
  • 2012-01-23
  • 1970-01-01
  • 2021-12-02
相关资源
最近更新 更多