我有两个ES查询:
{match:{text:{query: "text box", type: "phrase"}}} {match:{text:{query: "text bo", type: "phrase_prefix"}}}
问题是第二个查询返回的文档少于第一个查询,尽管我希望第二个查询返回第一个查询的所有记录以及其他内容。我想念什么?
谢谢
这可能是由于将max_expansions其设置为默认值10
max_expansions
试试这个
{ "query": { "match_phrase_prefix": { "text": { "query": "text bo", "max_expansions": 100 } } } }
该线程将帮助您了解术语的扩展方式。使max_expansions1000并查看结果。
基本上,您有很多以bo开头的单词,例如 bond,boss, 而且由于 “ x” 按字母顺序排在最后,因此您无法获得期望的结果。
我希望这有帮助!