使用片刻以日期格式保存日期。
let date= moment().format('MMMM Do YYYY, h:mm:ss a');
当我尝试使用以下代码获得年份时。我得到Undefined作为输出
db.checkouts.aggregate(
{"$project":{ date:1,
"year":{"$year":"$date"},
total:1,
delivered:1,
count:1,
clientName:1,
clientId:1,
dealerId:1
}},{"$match":{
dealerId:status.UserNumber
}},function(err,o){
console.log(o);
if(o) callback(o);
}
)
我可以从这个日期格式中获取年份吗?
答案 0 :(得分:1)
$year
和$month
仅对日期类型有效。
将您的类型更改为日期以使用上述表达式。
或
您可以使用$substr
提取字符串日期值的年份和月份。
$project: {year:{$substr:["$date", 8, 4]}, month:{$substr:["$date", 0, 4]}