草庐IT

count_array

全部标签

arrays - 在mongodb中删除数组中的数组

在我的mongo集合中,我有一个名为“institution.type”的嵌套变量。这是一个包含以下元素的数组:db.collection.distinct("institution.type")[null,["boarding"],"virtual"]我试图删除带有“登机”元素的条目,但是由于登机本身在一个数组中这一事实而卡住了(最初在对数组使用“$push”时犯了一个错误)我尝试了以下方法来查找文档:db.collection.find({"institution.type":{$in:["boarding"]}}).count()0和db.collection.update({"

c# - MongoCursor.Count 与... IAsyncCursor.Count?

有谁知道旧版MongoCursor的等效“计数”方法在哪里,但在新驱动程序(IAsyncCursor)中?或者有人知道如何使用2.0异步驱动程序/方法复制它吗?想法是通过分页(跳过和限制)查询文档,并且只有一次数据库命中,获取文档,返回文档的计数以及在没有LIMIT的情况下找到的所有文档的计数使用MongoDBC#遗留驱动程序,我曾经这样做过:MongoCursorresult=collection.FindAs(query);result.setSkip(20);result.setLimit(10);varsaleOrders=result.ToList();//'limited'

arrays - 如何使用 MongoDB 从嵌套在另一个数组中的数组中删除元素

问题假设我有一个文档如下:doc={"_id":ObjectId("56464c726879571b1dcbac79"),"food":{"fruit":["apple","orange"]},"items":[{"item_id":750,"locations":[{"store#":13,"num_employees":138},{"store#":49,"num_employees":343}]},{"item_id":650,"locations":[{"store#":12,"num_employees":22},{"store#":15,"num_employees":52

MongoDB db.collection.count() 与 db.collection.find().length()

我想了解为什么这些命令在针对同一个MongoDB集合从mongos实例运行时返回不同的数字?db.users.count()db.users.find().length()可能是什么原因,是否可能是潜在问题的征兆? 最佳答案 我相信你的收藏是分片的。大多数分片数据库解决方案都有这样的差异,因为有些命令会考虑整个集合,即所有分片的所有文档,而其他一些命令只考虑它所连接的分片的文档。这是要时刻牢记的事情。它主要适用于以下命令:计数返回给定字段具有最低值的文档返回给定字段具有最大值的文档...在Mongo上找到docs:count()is

Node.js/Mongoose/MongoDb Typescript MapReduce - emit() 和 Array.sum() 方法

我正在尝试使用MEAN堆栈和Typescript进行一个小项目,我似乎遇到了一个问题,即Typescript没有接受emit()和Array.sum()方法。下面是我的代码...letoptions:mongoose.ModelMapReduceOption={map:()=>{emit(this.customer,this.total);},reduce:(key,values)=>{returnArray.sum(values);},out:{replace:"map_reduce_customers"},verbose:true};我在NPM上使用typings包,并在我的项目中

arrays - MongoDB - 对数组参数元素进行操作查询

我是MongoDB的新手,我想弄清楚我是否可以使用MongoDB方便地执行此查询并获得良好的性能。我想将数字和数组参数传递给查询,并使用它们对集合中每个文档中的数组值逐个元素地执行操作。这可能吗?例如集合包含如下文档:{"name":"item1","m":5.2,"v":1.1,"data1":[0,0,0.3,0.7,0.95,0.9,0.75,0.4,0.1,0],"data2":[0,-1,0,1,1,0]}我还有另一个“搜索”文档,可能看起来像这样:{"x":8,"K":1,"dataA":[0,0,0,0,0,0,0,0.5,1,0.5],"dataB":[0,-2,0,1

arrays - MongoDB 如何在给定数组中插入带有_id 的对象

我的命令是这样的:db.item.remove()db.item.update({_id:{$in:['A1','A2']}},{$inc:{count:1}},{multi:true,upsert:true})我想要的结果应该是db.item.find()-->{_id:'A1',count:1}{_id:'A2',count:1}但实际上是:{_id:ObjectId(xxx),count:1}{_id:ObjectId(xxx),count:1}似乎Upsert不能自动使用查询数组中的val作为新文档的_id,有没有办法达到我的目的? 最佳答案

arrays - 如何在子文档的每个字段中搜索

这是我的文档:{"_id":ObjectId("5259b73b4949e0b22608960d"),"array":["a","b"]}要在array字段中查找一些值,我使用以下查询:db.collection.find({roles:'a'})但是当array字段看起来像这样时,我遇到了问题:{"array":{'0':'a','1':'b'}}如何使用这种数组(实际上是所有字段都是数组索引的子文档)执行与以前相同的查询?所以我需要找到一个文档,其中任何子文档的字段都等于某物。很遗憾,我无法更改此字段,因为它是由第3端API生成的。 最佳答案

arrays - 使用多个条件更新 mongodb 中嵌套数组中的对象

mongo中的示例文档如下所示,但我的集合有几千个文档,其中一些具有以下所有测试,而一些仅具有以下测试的子集:{"_id":ObjectId("52435f0f6f73205f7d37a2b0"),"ID":{"schoolID":"1234"},"institution":{"tests":[{"test":"SATMath","25th_percentile":null,"mean":404,"50th_percentile":null,"75th_percentile":null},{"test":"SATVerbal","25th_percentile":null,"mean"

node.js - Mongoose : Remove object from array based on ID (Cast Error)

我有一个看起来像这样的模型:mongoose.Schema({username:String,posts:[{type:Schema.Types.ObjectId,ref:'Post'}]});我有一个要传递ObjectID的端点:app.delete('/post',function(req,res){User.findOne({_id:req.user._id},function(err,result){result.pull({_id:req.body.post_id});});});感觉它应该可以工作,但我收到了这个错误:CastError:转换为ObjectId值“[obje