mongodb - 查找字段不存在的所有文档,加上如果字段存在则应用条件

标签 mongodb mongoose mongodb-query aggregation-framework

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

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

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

最佳答案

这样的事情怎么样:

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

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

关于mongodb - 查找字段不存在的所有文档,加上如果字段存在则应用条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23030328/

相关文章:

mongodb - 从Hive向MongoDB转储数据时出错

java - 为什么bson java实现使用4字节inc字段?

node.js - 缺少架构错误 : Schema hasn't been registered for model "Emp"

node.js - Node Js 链接响应

MongoDB 错误代码 11000 和 11001 之间的区别

mongodb - Doctrine EventListener onFlush 访问旧文档

javascript - Mongoose : How to find by date that start with a given input (like autocomplete : 25/01/2. .. , 25/01 ..)

MongoDB 聚合展开多个数组

java - 如何在android代码中创建MongoID?

node.js - 如何使用node js更新mongodb集合中所有文档的_id?