Сценарий: Рассмотрим, у меня есть следующий набор в MongoDB:Как подсчитать количество документов на поле даты в MongoDB
{
"_id" : "CustomeID_3723",
"IsActive" : "Y",
"CreatedDateTime" : "2013-06-06T14:35:00Z"
}
Теперь я хочу знать количество созданного документа на конкретный день (скажем, 2013-03-04) Итак, я пытаюсь найти решение, используя структуру агрегации.
Информация: До сих пор я следующий запрос постройки:
collection.aggregate([
{ $group: {
_id: '$CreatedDateTime'
}
},
{ $group: {
count: { _id: null, $sum: 1 }
}
},
{ $project: {
_id: 0,
"count" :"$count"
}
}
])
Issue: Теперь, учитывая выше запроса, его дает мне счет. Но не на основе только даты! Его время также учитывается при уникальном подсчете.
Вопрос: Учитывая, что поле имеет дату ISO, может ли кто-нибудь сказать мне, как считать документы на основе только даты (например, исключая время)?
Так как он дал мне '{_id: {день: '25', месяц: '05' , год: '2013'}, count: 31}, {_id: {день: '26', месяц: '06', год: '2013'}, count: 23}, .. 'за каждую дату. Мне нужно также сделать вторую группу с '{$ group: {_id: null, count: {$ sum: 1}}}' .. Спасибо за ваше время .. –