我查询了一个安静不一致的API,因此不返回所有数字索引的对象(但大多数都是这样)。为了进一步继续使用数字索引上的.count(),我一直在用db.collection.insert({})插入空文档
我现在的问题是:我如何找到并计算这些物体? 像db.collection.count({})这样的东西显然不会起作用。
感谢您的任何想法!
答案 0 :(得分:1)
使用$ where运算符。 Javascript表达式仅返回包含单个键的文档。 (那个单键是文件“_id”键)
db.collection.find({ "$where": "return Object.keys(this).length == 1" }).count()
答案 1 :(得分:0)
对于MongoDB 3.4.4及更高版本,请考虑运行以下聚合管道,该管道使用$objectToArray
(可从MongoDB 3.4.4和更新版本获得)来获取这些空文档/空字段的计数: / p>
None