我希望我的搜索返回我的查询字符串的完全匹配。查询字符串包括 2 个单词。
查询:“普通医生”应该只返回普通医生而不是“普通医生”
搜索方法:
$lower = 'general doctor';
$query = new \Elastica\Query\MatchAll();
$tagquery = new \Elastica\Query\Match();
$tagquery->setDefaultField('branchslug');
$tagquery->setFieldBoost('branchslug', 10);
$tagquery->setQuery(mb_strtolower($lower, 'UTF-8'));
$tagfilter = new \Elastica\Filter\Nested();
$tagfilter->setPath('expertdetailbranchid');
$tagfilter->setQuery($tagquery);
$tagfilter->setCached();
$filterBoolArticle = new \Elastica\Filter\Bool();
$filterBoolArticle->addMust($tagfilter);
$filterBoolArticle->setCached();
索引映射: http: //pastebin.com/JJkc9jq4