如何从 MongoDB 中集合中存在的一组文档中找到数组的最大长度?
How to find the max length of an array from a set of documents present in a collection in MongoDB?
我在 MongoDB 的一个集合中有 'n' 个文档。
这些文件的结构如下:
{
"_id": "...",
"submissions": [{...}, ...]
}
我想在现有的所有文档中找到提交次数最多的文档。
是否有任何 Mongo find/aggregation 查询可以做同样的事情?
我认为没有任何直接的方法可以实现这一点,
您可以试试下面的聚合查询,
$addFields
添加新字段 totalSubmissions
获取 submissions
数组中的总元素
$sort
按 totalSubmissions
降序排列
$limit
到 select 单个文档
collection.aggregate([
{ $addFields: { totalSubmissions: { $size: "$submissions" } } },
{ $sort: { totalSubmissions: -1 } },
{ $limit: 1 }
])
我在 MongoDB 的一个集合中有 'n' 个文档。 这些文件的结构如下:
{
"_id": "...",
"submissions": [{...}, ...]
}
我想在现有的所有文档中找到提交次数最多的文档。 是否有任何 Mongo find/aggregation 查询可以做同样的事情?
我认为没有任何直接的方法可以实现这一点,
您可以试试下面的聚合查询,
$addFields
添加新字段totalSubmissions
获取submissions
数组中的总元素$sort
按totalSubmissions
降序排列$limit
到 select 单个文档
collection.aggregate([
{ $addFields: { totalSubmissions: { $size: "$submissions" } } },
{ $sort: { totalSubmissions: -1 } },
{ $limit: 1 }
])