Можете да използвате рамката за агрегиране с $dayOfYear
оператор. Предположих, че рождената дата се съхранява в полето birthday
и че има поле, наречено name
:
db.data.aggregate(
[
{
"$project" : {
"_id" : 0,
"name" : 1,
"birthday" : 1,
"score" : 1,
"todayDayOfYear" : {
"$dayOfYear" : new Date()
},
"birthDayOfYear" : {
"$dayOfYear" : "$birthday"
}
}
},
{
"$project" : {
"name" : 1,
"birthday" : 1,
"score" : 1,
"isBirthDay" : {
"$eq" : [
"$todayDayOfYear",
"$birthDayOfYear"
]
}
}
},
{
"$match" : {
"isBirthDay" : true,
"score" : { $gt: 100}
}
}
]
)