我有一个集合,其中每个文档的时间字段存储的值与" 21-dec-2017"相似。我想使用投影将其转换为iSodate。我的查询:
db.getCollection('orders').aggregate([{
$project:{time : {$add : new Date("$time")}}
}])
但这是让我iSODATE(" 1970-01-01T00:00:00.000Z"(总是。
您可以尝试一下,
db.getCollection('orders').aggregate([{
$project: {
time: {
$dateToString: {
format: "%d-%m-%G",
date: new Date("$time")
}
}
}
}
])
没有任何字符串函数可以获取月份名称,例如jan,feb..dec。但是您可以参考https://docs.mongodb.com/manual/reference/operator/aggregation/datetetostring/更多信息。
在此ISODate("1970-01-01T00:00:00.000Z")
格式中没有问题。
您应该以ISO
格式存储日期,但根据您的说法在客户端上更改格式。
基本上您想以dd/mm/yy
格式显示日期。
您可以使用http://momentjs.com/来显示日期。