#mongodb #aggregation-framework
#mongodb #агрегация-фреймворк
Вопрос:
Учитывая документ, подобный этому :
{
"identifier" : "1234",
"year" : 2018,
"days" : 30
}
Где год может иметь только 2 значения: предыдущий год и текущий год.
Когда в базе данных присутствуют как предыдущий, так и текущий год, мне нужно включить только предыдущий год в мой групповой этап.
Вот мой текущий запрос :
db.getCollection('test').aggregate([
{
"$match":{
"identifier":{
"$in":[
"1234",
]
},
}
},
{
"$group":{
"_id":null,
"days":{
"$sum":"$days"
}
}
}
])
Возможно ли это ?
Спасибо
Комментарии:
1. Не могли бы вы показать образцы документов и ожидаемые результаты ?
2. если у меня есть эти 2 документа: { «идентификатор»: «1234», «год»: 2018, «дни»: 30 } и { «идентификатор»: «1234», «год»: 2019, «дни»: 20 } Сумма должна быть 30 из-за предыдущего года. Если бы у меня был только 2018 год, сумма должна быть 30, а если бы у меня был только 2019 год, сумма должна быть 20