2013-10-08 68 views
2

MongoDB似乎只做逻辑或文本查询?MongoDB文本搜索逻辑AND

如果我想查找所有包含单词('apple'或'orange'或'pear')的文档,我可以执行以下操作。

db.collection.runCommand('text', {search: 'apple orange pear', limit: -1}) 

但我怎么找到包含的单词(“苹果”和“橙色”和“梨”)三无特定顺序的所有文档。

这可能吗?

+0

检查这个答案出来作为AW orkaround支持通过用双引号包装每个单一的搜索词支持逻辑'AND'查询: http://stackoverflow.com/a/35641331/1123355 –

回答

-2

是的,有可能做到这一点。请在此参阅文件 - http://docs.mongodb.org/manual/tutorial/search-for-text/#match-phrases

您所查询的应该是这个样子......

db.collection.runCommand('text', { search : "('apple') AND ('orange') AND 
              ('pear')", limit : 1 }); 
+0

我不认为这是正确的,你链接是正确的,但你已经采取解释的例子,而不是代码示例 – Sammaye

+0

@Sammaye,我没有得到你..你说上面的代码是错误的吗?,我测试它在我的分贝工作... – SridharVenkat

+0

你完全确定或只是它只是以不同的方式搜索?阅读整个部分,你会看到我的意思 – Sammaye

2

逻辑与操作可以这样

“\”字1 \”完成\ “单词2 \” “

在你的榜样,因此: ”\“ 苹果\” \ “橙色” \ “梨花”,”