首页 文章

ElasticSearch模糊查询和区分大小写

提问于
浏览
2

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

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

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

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

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

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

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

最后,有没有人有任何关于查询数据的建议,以便FRANKIES实际上会返回命中?

提前致谢 .

1 回答

  • 2

    使用fuzzy_like_this查询

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

相关问题