Да, есть инфраструктура aggregation
в mongodb, где вы можете создать конвейер этапов, которые вы хотите запросить.
db.collection.aggregate([
{
$match: {
"sid": 1
}
},
{
$project: avg(rate): {
$avg: "$rate"
}
}
])
Как вы знаете, в sql
сначала применяется запрос where
, поэтому сначала мы разместили конвейер $match
. $match
в mongodb как-то эквивалентно where
i SQL, и есть $avg
в mongodb, который работает так же как AVG
в SQL