【问题标题】:MongoDB MapReduce. $exists on nested fieldMongoDB MapReduce。 $存在于嵌套字段中
【发布时间】:2015-02-25 20:47:24
【问题描述】:

我想对来自 MongoDB 的特定文档执行 map-reduce 操作。

假设我们有这个“文档”:

{
  a: {
    b: {
      c:{}
    }
  }
}

我只想选择那些具有 a.b.c 字段的文档。从this documentation page 我知道, $exists 运算符可以提供帮助。

要检查 a 是否存在,我应该使用:

query: {
  a: { $exists : true }
}

但是对于之前描述的嵌套字段,我应该使用什么查询呢?

query: {
  //?
}

【问题讨论】:

  • 尝试:查询:{ 'a.b.c': { $exists : true } }
  • 这个真的不需要回答。正如@Disposer 所指出的,您可能不知道“点符号”。在文档和这个网站上有很多示例可供搜索。
  • @Disposer,是的,它有效。非常感谢!
  • @NeilLunn,是的,我不知道。尚未找到任何点表示法的示例。

标签: mongodb mapreduce


【解决方案1】:

这与使用 map-reduce 的事实无关。

query: {
  'a.b.c' : { $exists : true }
}

嵌入文档的标准查询也是如此: http://docs.mongodb.org/manual/tutorial/query-documents/#embedded-documents

【讨论】:

  • 正如@Disposer 在上面的评论中所说,不要忘记 a.b.c! 周围的引号!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多