gpt4 book ai didi

mongodb - 向大型集合中的每个文档添加新属性

转载 作者:行者123 更新时间:2023-12-03 15:58:05 26 4
gpt4 key购买 nike

使用mongodb shell,我试图为一个大集合中的每个文档添加一个新属性。集合( list )具有一个称为Address的现有属性。我只是想添加一个名为LowerCaseAddress的新属性,该属性可用于搜索,因此我不需要使用不区分大小写的正则表达式进行地址匹配,这很慢。

这是我尝试在shell中使用的脚本:

for( var c = db.Listing.find(); c.hasNext(); ) {
var listing = c.next();
db.Listing.update( { LowerCaseAddress: listing.Address.toLowerCase() });
}

它运行了大约6个小时,然后我的PC崩溃了。有没有更好的方法可以为大量文档(约400万条记录)中的每个文档添加新属性?

最佳答案

您的JavaScript无法正常工作,但是下面的代码有效。但是,不知道要花多长时间才能获得400万条记录。

db.Listing.find().forEach(function(item){
db.Listing.update({_id: item._id}, {$set: { LowerCaseAddress: item.Address.toLowerCase() }})
})

关于mongodb - 向大型集合中的每个文档添加新属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6188188/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com