2013-02-12 36 views
2

我有一个包含要搜索的关键字列表的文档,但是Mongo只返回单个结果,即使有许多文档包含相同的关键字。MongoDB:搜索数组值时的单一结果

的文件看起来像这样:

{ 
    _Id: 51192567f5e65101d471c46b 
    Name: "Cat", 
    KeyWords: ["cat", "animal", "small"] 
} 

我使用的搜索数据库中蒙戈外壳下面:

db.Resources.find({"KeyWords":"cat"}) 

我想回到所有文件,其中的关键字数组包含猫(有很多),但我只是得到一个文件。

+0

我的示例中的架构不是我正在使用的实际架构,如果我创建了一个简单的架构,如上所述,搜索按预期工作;我的完整架构中必须有一些不完全正确的东西 – Dale 2013-02-12 10:58:54

+1

我知道这听起来很明显,但集合中的所有文档都具有完全相同的结构吗? – br3w5 2013-02-12 11:19:25

回答

1

我刚才在我的本地数据库检查,那么请检查您的结构 MongoDB

0

感谢您的答复;经过大量搜索之后,我发现程序中有一段代码用于加载只存储单个关键字的数据,因此尽管所有文档似乎都有很多关键字,但每个关键字只会出现在一个单一的文件!我在查看原始数据,这些数据在程序剥离出来之前在文档间重复了关键字。

数据加载失败!!!