在我的mongodb集合中,所有具有“ TimeStamp”字段的“ MM-DD-YYYY”格式的文档都存储为字符串。我想将所有文档中的退出时间戳字段更新为“ DD-MM-YYYY”格式。谁能帮我写一个查询。
示例我的文档如下
{
"id" : "1",
"TimeStamp" : "09-22-2018"
},
{
"id" : "2",
"TimeStamp" : "09-23-2018"
}
我想将它们更新为
{
"id" : "1",
"TimeStamp" : "22-09-2018"
},
{
"id" : "2",
"TimeStamp" : "23-09-2018"
}
答案 0 :(得分:1)
您可以遍历所有文档并重新格式化TimeStamp,如下所示:
function reformat(date) {
var parts = date.split('-');
return parts[1]+'-'+parts[0]+'-'+parts[2];
}
db.collection.find({TimeStamp : {$exists: true}}).snapshot().forEach(
function (doc) {
db.collection.update(
{ _id: doc._id },
{ $set: { TimeStamp: reformat(doc.TimeStamp) }}
);
}
);
答案 1 :(得分:0)
您可以尝试以下$out
聚合
SecurityConfig