ElasticSearch模糊查询和区分大小写

时间:2014-07-22 09:37:36

标签: elasticsearch fuzzy-search

我刚刚开始研究ElasticSearch并对模糊查询提出了一些问题。假设我有一个这样的文档:

{ "name": "Frankie's Hot Dogs" }

使用模糊查询,如果我使用以下参数进行搜索,则不会收到任何结果:

"fuzzy": {
  "name": {
    "value": "FRANKIES",
    "fuzziness": 2
  }
}

这是预期的行为吗?我认为,由于该字段默认为标准分析器,因此名称字段将被标记化并小写为:

["frankie's", "hot", "dogs"]

那么搜索模糊查询会不会自动小写搜索字词?或者情况不是这样吗?

最后,是否有人对查询数据有任何建议,以便FRANKIES实际返回命中?

提前致谢。

1 个答案:

答案 0 :(得分:2)

使用fuzzy_like_this查询

 "query": {
    "fuzzy_like_this" : {
        "fields" : ["name"],
        "like_text" : "FRANKIES"
    }
}