2017-10-04 79 views
0

在我的CloudSearch实例中,我希望给予更高的优先级来完成短语,而不仅仅是单词计数。如何优先考虑完整句子而不是单个搜索词?

一个例子是,当我搜索“foo bar”时,我希望文档中具有“foo”和“bar”的文档的得分要优于文档中散布两个词的文档。当然,任何其他包含任何单词的文档都应该被检索,但不会得分高。

有关如何完成查询的任何想法?

回答

0
$searchQuery = array(
    'query' => "(or ".$searchParam." (phrase boost=10 ".$searchParam."))", 
    'queryParser' => 'structured', 
    'queryOptions' => json_encode(array('defaultOperator' => 'or')) 
); 

这在一定程度上有效。 完全随机提升值。