Я использую MongoDB 3.4.18.У меня есть следующее название коллекции: student_details
.Данные внутри него выглядят так:
{
_id : ObjectID(generated_id),
in_time : <student_registered_in_time>
student_id : 'abc',
out_time: <student_registered_out_time>,
date_r: <date_in_ISO_FORMAT>
} ,
{
_id : ObjectID(generated_id),
in_time : <student_registered_in_time>
student_id : 'def',
out_time: <student_registered_out_time>,
date_r: <date_in_ISO_FORMAT>
}
Я хочу напечатать общее количество времени, потраченное студентом, имеющим конкретный student_id
(скажем abc
) для определенного дня.Например, вывод должен быть
{
'student_id' : 'abc',
'total_time_spent': 'total_time_spent_in_minutes'
'date': date
}
Заранее спасибо.
Я пробовал следующее, хотя.
db.student_details.aggregate([
{
$match: {
date_r: {
$gte: ISODate("2018-11-01T00:00:00.000Z"),
$lt: ISODate("2018-11-31T23:59:59.000Z")
} ,
student_id : 'abc',
}
}, {
$group: {
total: {
$sum: <confused_about_this_part>
}
}
}
]);