2016-12-15 120 views
-1

我有mongo文档,其中包含有关组织中的员工的数据。 我想搜索多个关键字的文档,并获得更好的结果。使用多个关键字和排序结果的MongoDB搜索

eg:**search with "Java, Spring, Hibernate, HTML"** 

should return documents which contains whole keywords and with maximum 
number of keywords and so on until it reaches with at least any of the keyword. 
Please help me to solve this problem. 

回答

0

给一个尝试:

db.collection_name.find("text", {search:"Java spring hibernate html"}) 

$文本执行上的文本索引索引字段的内容的文本搜索。 $ text表达式具有以下语法:

版本3.2中已更改。

{ 
$text: 
{ 
    $search: <string>, 
    $language: <string>, 
    $caseSensitive: <boolean>, 
    $diacriticSensitive: <boolean> 
    } 
} 

请记住,这将返回甚至匹配单个术语(如只有java或html)的文档。

+0

感谢您的回答。我知道了,但我需要知道是否有任何方法可以找到整个内容的文件,如果不是,那么至少有3个关键字,然后是2,然后是1等 –

+0

是的,这种方法将找到甚至一个关键字和所有或更少的文档。搜索方法将使用Java或Spring或hibernate或html或甚至2个或更多关键字返回文档。尝试使用一次。 –