У меня есть следующий запрос: найти
теги в поле имени и заменить их пустым пространством - чтобы избавиться от них.
Имена строк могут иметь от 1 до многих
теги, например.Найти и заменить строки в документах Эффективно
AA aa
AA aa
AA aa
AA aa
AA AA aaaaaaaa
... подобный.
db.tests.find({'name':/.* .*/}).forEach(function(test){
test.name = test.name.replace(" ","");
db.tests.save(test);
});
db.tests.find({'name':/.* .*/}).forEach(function(test){
test.name = test.name.replace(" ","");
db.tests.save(test);
});
db.tests.find({'name':/.* .*/}).forEach(function(test){
test.name = test.name.replace(" ","");
db.tests.save(test);
});
Другие, чем повторять тот же шаблон запроса, есть лучшее решение для обработки этой ситуации, с точки зрения меньшего дублирования и повышения производительности?
Нет необходимости запускать запрос обновления $ set: вы можете просто выполнить db.tests.save (doc); – alexcasalboni