草庐IT

save_count

全部标签

java - Spring 数据蒙戈 : How to save batch ignoring all duplicate key errors?

我有以下域对象:@DocumentclassFoo{@IdprivatefinalStringbar;privatefinalStringbaz;//getters,setters,constructoromitted}插入如下:Collectionfoos=...;mongoTemplate.insert(foos,Foo.class);如何在忽略所有重复键异常的情况下在一次调用中保存所有结果? 最佳答案 在我的例子中,像@marknorkin的回答那样允许修改/覆盖现有文档是不合适的。相反,我只想插入新文档。我使用MongoOp

mongodb - 高级数据聚合 : counting average in MongoDB collections

我有一组文档,例如:{"browser":"firefox","version":"4.0.1"}{"browser":"firefox","version":"3.6.2"}{"browser":"ie","version":"8.0"}如何计算所有浏览器的平均值以便结果为:globalfirefox:66%globalie:33%precisefirefox:4.0.1:50%3.6.3:50%棘手的部分是我不想在数组中提供所有可用的Firefox版本。MongoDB查询应该找到集合中的所有不同版本并计算所有版本的平均值。提前致谢! 最佳答案

node.js - 使用 mongoose findOne/save 保存对象不起作用

我的模型是:GigSchema=newSchema({lastUpdate:{type:Date,"default":null},type:{type:String,"default":null,"enum":[null,'mvp','code-review','extension','existent-code-review','internal','design']},meta:{type:Object,"default":{chats:0,phoneCalls:0,responseTime:null}},engaged:{type:Date,"default":null}});当

mongodb map 减少 value.count

在mongodb中,我有一个map函数,如下所示:varmap=function(){emit(this.username,{count:1,otherdata:otherdata});}和减少功能如下:varreduce=function(key,values){values.forEach(function(value){total+=value.count;//notethisline}return{count:total,otherdata:values[0].otherdata};//pleaseignoreotherdata}问题出在注释的行上:total+=value.c

mongodb - MongoTemplate.save 上出现意外的 OptimisticLockingException

我正在尝试使用MongoTemplate存储一个名为Person的实体。由于我想使用乐观锁定,因此使用@Version注释对实体进行版本控制。当我尝试使用MongoTemplate.save将一个新的Person实体存储到一个空集合中时,我得到了OptimisticLockingException。我没想到会这样,因为我正在创建一个新对象而不是更新现有对象。(并且没有其他线程正在访问该集合。)这是预期的行为,还是我做错了什么?(如果我改用MongoOperations.insert,一切正常。(不过我想使用保存,因为CrudRepository只有保存,没有更新。)如果我删除@Vers

node.js - Mongoose 钩子(Hook) "pre/post save"不适用于 findOneAndUpdate

我正在使用nodejs+express+mongoose。我为模块添加了“pre/postsave”Hook,它与保存功能配合得很好。但是当我使用findOneAndUpdate(如果不存在则创建)时,不会调用Hook。看来我唯一能做的就是将findOneAndUpdate分成两个函数,先搜索项目然后创建。有没有更好的办法来解决这个问题? 最佳答案 来自Mongoose文档:AlthoughvaluesarecasttotheirappropriatetypeswhenusingthefindAndModifyhelpers,the

node.js - Mongoose - 'save' 方法不存在

考虑在MongooseJS上运行的mongodb集合。示例代码:Person.where('uid').equals(19524121).select('name').exec(function(err,data){//HereIcangetthedatacorrectlyinanarray.console.log(JSON.stringify(data));data[0].name="trytosavemenow";//Selectthefirstiteminthearraydata[0].save();//Object#hasnomethod'save'.}错误-似乎无法找到解决此

java - spring mongorepository save 抛出重复键异常

我正在使用java和Spring。作为测试,我通过id查询一个对象,然后尝试在不更新任何内容的情况下保存同一个对象。执行此操作时出现重复键异常。根据我读过的内容,如果_id为空,则MongoRepository.save()应该进行插入,否则进行更新。显然,我应该得到更新。一些代码://SucceedsDatatypesut=mongoRepository.findOne("569eac0dd4c623dc65508679");//Failswithduplicatekey.mongoRepository.save(sut);为什么?对其他类的对象重复上述操作,它们就可以工作了。我该如

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'

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

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