Mongodb 按字段数对结果排序

Mongodb sort results by number of fields

我正在使用 robomongo 查询包含数百万个对象的 mongodb 集合。

我想查看哪些对象的字段数最多,因此希望结果按每个对象中的字段数排序。

例如,我希望看到字段数最多的对象出现在搜索结果的开头。

无法按字段数对结果进行排序,除非您明确将此计数另存为文档中的字段。 MongoDB 在检索文档之前不知道文档中的字段数。

如果字段计数对于您的用例来说实际上是一个有意义的值,您将不得不编写一个自定义脚本来计算它(并决定您是只关心顶级字段,还是实际上想要递归到嵌入式 documents/arrays).