草庐IT

去重复

全部标签

node.js - MongoDB,使用Mongoose重复键错误索引?

我有一个MEN(MongoDB、Express、Node)应用程序,当我插入第一个项目时一切都很好,但是当我想添加第二个项目时我得到这个错误:E11000duplicatekeyerrorindex:local.movies.$title_1dupkey:{:null}如果我然后删除第一行,然后再次插入一个项目,它就可以工作,但是当我想添加第二个项目时,我再次出现错误。我真的在这个问题上拉扯我的头发,似乎找不到问题:(希望有人能帮助我:)顺便说一句,我如何从命令行访问我的表?我尝试了db.movi​​es.find()、movies.find()和其他选项,但没有任何反应,当我键入sh

arrays - 从 mongodb 中删除重复的数组值

在mongodb中我有一个集合,其中数组有重复的条目,比如{"_id":ObjectId("57cf3cdd5f20a3b0ba009777"),"Chat":6,"string":["1348157031Riyadh","548275320MohammadSumon","1348157031Riyadh","548275320MohammadSumon","1348157031Riyadh","1348157031Riyadh"]}我需要删除重复的数组并只保留唯一的数组值,如下所示。{"_id":ObjectId("57cf3cdd5f20a3b0ba009777"),"Chat":

javascript - insertMany 总是返回重复的 _id 错误

我有一个Mongo集合,我正在尝试将多个文档插入其中,如下所示:db.collection('properties').insertMany(docs).catch(err=>console.log(err)).then((err,result)=>{console.log(err);console.log(docs);console.log(result);//if(err)console.log(err);//elseif(callback)callback();});这总是返回以下错误:{[MongoError:insertDocument::causedby::11000E11

MongoDB 在处理重复查询时变得更快

我正在使用MongoDB开发Web应用程序。我注意到一个现象,当重复执行相同的查询时,处理速度提升并最终在某一点收敛。就像查询集合中的所有文档时,每个查询的时间使用量将是100000ms->20000ms->9000ms->...->500ms。我想知道速度提升背后的原因是什么?以及如何估计收敛点? 最佳答案 原因有很多,我可以给点意见。首先,MongoDB能够为您的查询选择最佳索引。为此,MongoDB使用查询计划。但是这个操作需要时间:Iftherearenomatchingentries,thequeryplannergene

mongodb - 如何查找数组中的重复元素(一个文档)?

如何返回MongoDB中存在的数组中的重复元素(忽略大小写)?输入(MongoDB中的文档){"userID":"USER001","userName":"manish","collegeIDs":["COL_HARY","COL_MARY","COL_JOHNS","COL_CAS","COL_JAMES","col_mary","COL_JOHNS","COL_JOHNS"]}预期输出:{"collegeIDs":["COL_MARY","col_mary","COL_JOHNS"]}注意:只检查内容,不检查大小写。返回列表中的所有可能性我尝试过的db.myList.aggrega

mongodb - 带有 MongoDB 的重复事件模式

我已经阅读了一些描述重复事件的数据存储方法的论文,但我仍在努力思考最佳实践,尤其是关于MongoDB的。我主要关心的是廉价地检索给定时间范围内发生的所有事件。我的次要关注点是修改和更改单个事件而不会使整个事件链失控。看了别人问过类似的问题,我想到了一个可能性。我并没有完全相信它,并且会喜欢一些正确方向的指示。我的想法:在每个事件文档中,有...与iCal标准非常匹配的重复字符串字段“事件”嵌入文档或数组字段,其中包含对特定事件的更改/编辑(例如更改描述或开始时间,或取消单个事件)。出现开始和结束字段,用于定义易于查询的重复规则边界优点:能够存储更改并仍然保持与其他事件的关联很容易查询,

javascript - Angular js ng-重复重复项

我的ng-repeat没什么问题$http.get("/test-server/rest/servizi/listaRuoli").success(function(data){ $scope.servizio=data; console.log(data.label);})SelezionaunServizio(obbligatorio)问题是,由于我在网上阅读的mongodb,我无法使用$index跟踪。一些想法?谢谢! 最佳答案 改用ng-options:SelectOne 关于j

javascript - 防止在 MongoDB 中创建重复的 ID

在我的Node/MongoDB后端中,我有一个引用付款人集合的模型,如下所示:clients:[{id:{type:mongoose.Schema.Types.ObjectId,ref:'clients'}}],这是有效的,因为插入了一个引用正确“客户端”的ID。然而,同时发生的是mongo正在自动插入一个mongoID。所以在有问题的文档中,我最终得到了这个:clients:[{id:6b8702ad021ba27d4a3b26h9,//mycorrectrefobjectID_id:4n8702bv036ba12g6a3b28f4//anadditionalobjectIDauto

javascript - 如何在不同的对象字段中查找重复值?

如何使用mongoose进行搜索以查找不同字段中的重复值?这是示例文档:{"followers":{{"_id":"5bf6d610d3a3f31a6c75a9f4"},{"_id":"5bf6d610d3a3f31a6c75a8c3"}},"following":{{"_id":"5bf6d610d3a3f31a6c75a9f4"},{"_id":"5bf6d610d3a3f31a6c75b7a2"}},}我想在followers和following字段下找到相同的_id值。预期输出:{{"_id":"5bf6d610d3a3f31a6c75a9f4"}}我应该使用什么查询?

node.js - Mongodb 使用 addtoSet 确保没有重复项

针对mongodb2.6使用mongoose-提出的另一个问题听起来与我的相似;https://github.com/LearnBoost/mongoose/issues/1677我有这段代码:$addToSet:{invite_list:{$each:[{email:'test@test.com'},{email:'test@test.com'},{email:'test@test.com'},{email:'test@test.com'}]}}应该只存储一项,而不是存储4项!但是,将查询更改为此$addToSet:{invite_list:{$each:['test@test.co