为什么match_phrase_prefix不匹配城市名称太短了?

时间:2016-04-20 15:08:34

标签: elasticsearch

让我们说我想搜索"洛杉矶"在城市数据库中。

为什么要关注查询

{
  "query": {
    "match_phrase_prefix": {
      "city": {
        "query": "los an",
        "max_expansions": 20,
        "fuzziness": "AUTO"
      }
    }
  }
}

不匹配"失落的安吉尔"但是,如果我将query更改为query: los ang,则匹配" Los angeles"正好。

字段映射为默认分析器

的字符串
"city": {
  "type": "string"
},

我想实现一个自动完成功能,匹配" los"," los a"和"洛杉矶"同样。

修改:我需要澄清一下,如果los an我的结果设置为空,而los ang则返回总计9338的结果。在第一种情况下,我预计至少会有一些命中(超过200万个文档)而不是空结果集。为什么会发生这样的事情?

0 个答案:

没有答案