2014-05-07 53 views
0

我对mongodb有问题。 我有一个查询,我想用另一个字符串替换一个字段的字符串的一部分。编辑替换部分字符串的mongodb查询结果

例如: 代替{description:“嗨。”}我想要{描述:“嗨!”} 替换“。”用“!”

我不想更新数据库,我只想编辑查询的输出。 问题是我需要在查询内部完成这个操作,我认为这不可能。

感谢您的建议。

回答

0

你只能用MapReduce的做到这一点:

var mapFunction = function() { 
    emit(this._id, this.description); 
    emit(this._id, this.description); 
}; 

var reduceFunction = function(id, descriptions) { 
    return descriptions[0].replace(/\./g,"!"); 
}; 

db.yourCollection.mapReduce(mapFunction,reduceFunction,{out:{inline:1}});