Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.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
Ruby 如何获得嵌入式阵列';mongo的尺码是多少?_Ruby_Mongodb - Fatal编程技术网

Ruby 如何获得嵌入式阵列';mongo的尺码是多少?

Ruby 如何获得嵌入式阵列';mongo的尺码是多少?,ruby,mongodb,Ruby,Mongodb,可能重复: 我有一个文档,其中包含一个数组类别。我只想知道类别中有多少项。我在文档中所能找到的就是如何计算顶级文档的数量 { "_id": { "$oid": "4e73a30466ca1a1f56000001" }, "category": [ "Food", "Entertainment" ] } 要在名为nd mycollection的集合中查找单个示例元素,请执行以下操作: db.mycollection.find().limit(1

可能重复:

我有一个文档,其中包含一个数组
类别
。我只想知道
类别中有多少项
。我在文档中所能找到的就是如何计算顶级文档的数量

{
 "_id": {
     "$oid": "4e73a30466ca1a1f56000001"
    },
 "category": [
     "Food",
     "Entertainment"
    ]
}

要在名为nd mycollection的集合中查找单个示例元素,请执行以下操作:

db.mycollection.find().limit(1)[0];
要获取arry类别中的元素数,请执行以下操作:

db.mycollection.find().limit(1)[0].category.length;
或:


将新字段添加到hande类别大小。这是mongo world中的一种常见做法。

这不返回数组吗,然后我在本地计算数组?使用mongodb
count()
方法,让数据库只返回计数,而不让数据库获取整个对象,然后在本地对其进行计数,这不是更好吗?我确实添加了很多关于实际答案的内容来完成它。因此,对给定问题的简短回答只是:
elem.category.length
var elem = db.mycollection.find().limit(1)[0];
elem.category.length;