Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 查询数组内数组大小大于1的文档_Database_Mongodb_Collections_Mongodb Query_Nosql - Fatal编程技术网

Database 查询数组内数组大小大于1的文档

Database 查询数组内数组大小大于1的文档,database,mongodb,collections,mongodb-query,nosql,Database,Mongodb,Collections,Mongodb Query,Nosql,我试图找出是否有任何文档存在,并且对于Mongo中其他两个列表中的列表,其大小超过一个 我的收藏是这样的: { "value": { "items": [ { "docs": [ { "numbers": [

我试图找出是否有任何文档存在,并且对于Mongo中其他两个列表中的列表,其大小超过一个

我的收藏是这样的:

{
    "value": {
        "items": [
            {
                "docs": [
                    {
                        "numbers": [
                            1,
                            2
                        ]
                    },
                    {
                        "numbers": [
                            1
                        ]
                    }
                ]
            }
        ]
    }
}
我尝试使用此查询,但不起作用:

db.getCollection('MyCollection').find({"value.items.docs.numbers":{ $exists: true, $gt: {$size: 1} }})
如果列表中有多个项目,理想的查询应该是什么
  • 您正在检查嵌套数组中的条件,因为嵌套的
    $elemMatch
    条件将有助于检查条件
  • $size
    只允许数字作为输入,因此
    $not
    将在负数情况下提供帮助
  • 检查数组大小的
    $ne
    不应[]为空

  • 问题还不清楚,这是您要找的吗?@varman it正在检查
    数字
    字段中的值的条件,请看,这不会返回任何内容,因为
    数字
    字段中的所有值都小于1。您认为提供的答案中是否有某些内容无法解决您的问题?如果是,请对答案进行评论,以澄清哪些问题需要解决,哪些问题尚未解决。如果它确实回答了您提出的问题,请注意接受您对问题的回答
    
    db.getCollection('MyCollection').find({
      "value.items": {
        $elemMatch: {
          docs: {
            $elemMatch: {
              numbers: {
                $exists: true,
                $ne: [],
                $not: {
                  $size: 1
                }
              }
            }
          }
        }
      }
    })