如果给出查询,则MongoDB的count()错误地返回0

fre*_*all 5 database mongodb

我们的数据库目前正在运行,一切似乎都很好.我想做一些统计,所以我做了一些标准的电话.基本上我想要一些特定数据的数量.

首先是一些基本调用,向您显示数据库中确实存在数据.

> db.files.count()
814639

> db.files.find({"migrated":true})
{ "migrated" : true, "filename" : "bleh",... }
...
Run Code Online (Sandbox Code Playgroud)

显然有数据,并且调用返回它.现在我想知道有多少结果,但我明白了:

> db.files.count({"migrated":true})        
0
Run Code Online (Sandbox Code Playgroud)

我也是这样做的:

> db.files.find({"migrated":true}).count()
0
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么会发生这种情况?

版本是:

> db.version()
1.8.1
Run Code Online (Sandbox Code Playgroud)

任何帮助将非常感激

fre*_*all 1

已经有一段时间了,但我现在要关闭它。但这是一个损坏的数据库。必须手动将所有项目从一个数据库移动到新数据库,因为备份在发现损坏的数据时停止,并且随后没有备份有效数据。