草庐IT

mongodb.driver

全部标签

MongoDB:只更新嵌套数组的一个对象

我想改变group第二个元素的第三个data元素{"_id":"wLXDvjDvbsxzfxabR","group":[{"title":"title1","data":[{"note":"text"}]},{"title":"title2","data":[{"note1":"text"},{"note2":"text"},{"note3":"text"}]}]}这就是我正在做的,但它给了我一个错误的结果:varsetObject={group.2.data.3:{'newnote':'newtext'}}Collection.update({_id:'wLXDvjDvbsxzfxa

php - PHP 中的 MongoDB 使用聚合按 _id 分组无效

我正在尝试使用这个MongoDB命令和过滤器,当我将它翻译成PHP时它确实起作用了,希望有人可以帮助我解释为什么它不起作用?MongoDB语法:db.getCollection('product').aggregate([{$match:{'Store.Title':{$regex:'apc',$options:'gi'}}},{$group:{_id:null,count:{$sum:1}}}]);MongoDB的输出:{"result":[{"_id":null,"count":774.0000000000000000}],"ok":1.0000000000000000}PHP过滤

javascript - 更改 meteor 中 mongodb 集合的结构

我必须更改集合的文档结构。基于这篇文章(MongoDB/Meteor:AdduniqueIDtoeveryarrayelement)我正在使用代码:Collection.find({}).forEach(function(doc){addId(doc.group);});functionaddId(obj){if(Object.prototype.toString.call(obj).indexOf('Array')>=0){obj.forEach(function(item){item.id=item.id||Random.id();addId(item);});}elseif(ty

mongodb - 如何迭代 mongodb 文档中的对象?

我的mongo集合中的文档是这样的:{"_id":ObjectId("568f7e67676b4ddf133999e8"),"auth_dic":{"2406":["44735"],"6410":["223423"]......},"user_id":"fdasd23423"}这是一个用户,'auth_dic'中有很多id像'2406''6410'我想用usermap_reduce方法统计有多少用户有'2406',有多少用户有'6410',以及其他类型。我的映射器是:mapper=Code('''function(){this.auth_dic.forEach(function(app

javascript - Mongodb 聚合基于过去的日期

我正在尝试在Mongodb中执行查询。我要执行的查询是根据日期(过去7天)查找集合中的所有订单,然后将价格与每个订单的嵌套对象相加。到目前为止,我有以下代码:收集/数据{"_id":"g32fYpydfSFDbFkoi","orderNumber":1234,"createdAt":ISODate("2016-01-12T13:50:17.559Z"),"productsInOrder":[{"category":"ambient","item":23982,"desc":"ErgonomicCottonSausages","quantity":"456","price":"0.54"

mongodb - 分解文档或保持文档完整的性能权衡

我的问题是关于MongoDB/NoSql中数据结构的性能优化我有一个包含非常大文档的集合。我将需要每分钟多次迭代整个集合以进行数据分析。假设:-文件数量我的问题是:通过创建仅包含数字运算所需字段的缓存集合,我是否会显着提高性能?这样做需要维护缓存表的开销。 最佳答案 我想这取决于文档是否在内存中(或者你的内存足够大以缓存它们)。如果不是,缓存将显着提高性能。 关于mongodb-分解文档或保持文档完整的性能权衡,我们在StackOverflow上找到一个类似的问题:

mongodb - 失败 : no intent for collection in archive

因为我删除了我的MongoDB数据库,我得到了这个错误]1Failed:nointentforcollectioninarchive: 最佳答案 显然这是mongodump和mongorestore的限制,如果集合名称中有正斜杠,它们将无法工作,因为它是操作系统级别的路径分隔符:https://jira.mongodb.org/browse/TOOLS-1163 关于mongodb-失败:nointentforcollectioninarchive,我们在StackOverflow上找到

mongodb - Moment JS 一年中的周数

我正在尝试将MongoDB记录分成MomentJS中的日期范围。在Mongo中,每条记录的IsoDate格式为:"date":{"$date":"2015-06-26T13:02:12.121Z"},我的查询返回周和年:varquery=Order.aggregate([{$project:{week:{$week:'$date'},year:{$year:'$date'},dayOfWeek:{$dayOfWeek:['$date']}}},{$group:{_id:null,distinctDate:{$addToSet:{year:'$year',week:'$week'}}}}

javascript - 用 proxyquire 模拟 MongoDB

我想用proxyquire模拟MongoDB依赖通过在我的测试中这样做:varproxyquire=require('proxyquire');varcontroller=path.resolve('.path/to/controller/file.js');在每个语句之前:mocked_mongoose={isMocked:true,model:function(name,schema,collection,skipInit){return{find:function(conditions,projection,options,callback){console.log('callb

c# - BsonDocument基础数学(求和)MongoDB.Driver C#

我有一组BsonDocuments,如下所示:{"_id":ObjectId("5699715218a323101c663b9a"),"amount":24.32,"color":false}我想对这个特定集合(~1,000BsonDocuments)中“数量”的所有值求和。这是我目前所拥有的:vargroup=newBsonDocument{{"$group",newBsonDocument{{"_id","$amount"},}}};varpipeline=new[]{group};varresult=collection.Aggregate(pipeline);`声明变量“res