查询数组中字段大于x的文档

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了查询数组中字段大于x的文档相关的知识,希望对你有一定的参考价值。

我很难理解如何对数组进行查询。一个基本的例子,如果我拿这个文件:

Man
 children
  Frank
   age: 33
  Anna
   age: 28

我怎样才能找到所有年龄大于30岁的孩子?

谢谢!

答案

@Veeram的查询效果很好:

db.getCollection('men').aggregate([ 
{ $match: {'children.age': {$gt:30}} }, 
{ $project: { children: {$filter: { input: '$children', as: 'child', cond: {$gt: ['$$child.age', 30]} }}, _id: 0 }}
])

这个link帮助我理解。

以上是关于查询数组中字段大于x的文档的主要内容,如果未能解决你的问题,请参考以下文章