Поскольку ваша дата в очень странном формате 2018-11-03:10:47:31
, вы не можете легко разобрать ее с помощью предыдущей версии Монго 4.0.Причина этого заключается в том, что в версии 4.0 опция format
была добавлена к функции $dateFromString
, которая позволяет вам указать произвольный формат даты, с которым нужно выполнить синтаксический анализ.Итак, как вы упомянули, если 4.0 является опцией, вы должны сделать что-то вроде этого:
Добавление поля в вашу агрегацию после того, как вы раскручиваете employeeInfo
:
$addFields: {
"employeeInfo.date": {
$dateFromString: {
dateString: "$employeeInfo.time",
format: "%Y-%m-%d:%H:%M:%S"
}
}
}
Или проецируете его вваш проектный конвейер.
{
"$project": {
"employeeInfo.time": {
$dateFromString: {
dateString: "$employeeInfo.time",
format: "%Y-%m-%d:%H:%M:%S"
}
}
}
}
При проектном подходе может потребоваться также и unwind
, так как он может быть требователен к факту, что у вас есть массив как employeeInfo