该phrase
类型不适用于词干分析器进行多重匹配查询。但是phrase_prefix
输入有效。坦白地说,我不知道为什么。文档中没有任何提示。
因此,以下两个多匹配查询为我返回了相同的结果:
{'query': {'multi_match': {'query': "dementia in alzheimer", 'type': 'phrase_prefix', 'analyzer': 'stem_analyzer', 'fields': ['_all']}}}
{'query': {'multi_match': {'query': "dementia in alzheimer's", 'type': 'phrase_prefix', 'analyzer': 'stem_analyzer', 'fields': ['_all']}}}
在布尔查询中,match_phrase
可与词干分析器一起使用。以下两个查询返回相同的结果:
{'query': {'bool': {'must': [{'match_phrase': {'Diagnosis': {'query': "dementia in alzheimer", 'analyzer': 'stem_analyzer'}}}]}}}
{'query': {'bool': {'must': [{'match_phrase': {'Diagnosis': {'query': "dementia in alzheimer's", 'analyzer': 'stem_analyzer'}}}]}}}