我有如下的 MongoDB 文档: 是否有查询以订阅组的长度对文档进行排序?可以是升序或降序。
{
"_id" : ObjectId("58c29d9ec79d585c0e16b110"),
"subscribedGroups" : [
ObjectId("5b28a9190c8c0d0014b03a0c"),
ObjectId("5b2930650b813a0014a3294d"),
ObjectId("5b29f1b5243d470014d6d351")
]
}
最佳答案
您可以使用 $size
找到 subscribedGroups
的大小然后轻松$sort
与数组的长度
db.collection.aggregate([
{
$addFields: {
subscribedGroupsLength: {
$size: "$subscribedGroups"
}
}
},
{
$sort: {
subscribedGroupsLength: -1
}
}
])
参见 sample
关于node.js - 按数组mongodb查询的长度排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50942173/