mongo
天马行空波
Python/Golang后端开发
展开
-
MongoDB 在 upsert=True 时,filter和唯一键一致,并发情况下会报错:E11000 duplicate key error collection 怎么解决?
但是在高并发的情况下,我们会有多个服务同时更新同一个collection,操作都是update_one + upsert=true 来完成的,但是每隔一段时间,服务就会报错,提示 E11000 duplicate key error collection。我已经创建了一个复合索引,并使用搜索条件将其设置为唯一,这样,在集合中,如果搜索到的内容,我搜索的内容将始终唯一。所以嘛,是再mongo库执行upsert的时候 并发插入导致的唯一键冲突。查询不到就插入,查询到了就更新,那会有什么问题呢?原创 2023-01-11 18:02:04 · 1473 阅读 · 1 评论 -
mongoDB 批量将某个字段值等于另一个字段值
话不多说,直接上代码 db.collection_name.find().forEach( function(item){ db.collection_name.update({_id:item._id},{$set:{update_time:item.create_time}}) } )类似于js的写法,一个一个替换 相当于MySQL的update collection_name set update_time=create_t原创 2021-03-25 20:57:25 · 2055 阅读 · 0 评论 -
MongoDB之$关键字,以及$修饰器$set,$inc,$push,$pull,$pop
转载自:https://www.cnblogs.com/wqzn/p/10278217.html一.查询中常见的 等于 大于 小于 大于等于 小于等于等于:在MongoDB中,什么字段等于什么值就是" : ",比如 “name”:“路飞学城”、大于:在MongoDB中 大于号,我们用:$gt 比如 : “score” : { $gt : 80 } 就是 得到 “score” 大于 80 的数据大于等于 : 在MongoDB中的 大于等于 >= 号 我们用 : $gte 比如 : “sc转载 2020-12-16 15:30:47 · 1467 阅读 · 1 评论