🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# Fuzzy Query(模糊查询) 原文链接 : [https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-fuzzy-query.html](https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-fuzzy-query.html) 译文链接 : [http://www.apache.wiki/pages/viewpage.action?pageId=4882439](http://www.apache.wiki/pages/viewpage.action?pageId=4882439) 贡献者 : @小布丁 从5.0.0开始已经标记为过时。 将在6.0中正式移除,使用**匹配查询**替代**模糊查询**。 模糊查询使用基于 **Levenshtein 编辑距离**的相似性。 ## 字符串字段 **模糊查询**生成在模糊性中指定的最大**编辑距离**内的所有可能的匹配项,然后检查项词典以找出实际存在于索引中的那些项。 这有一个简单示例: ``` GET /_search { "query": { "fuzzy" : { "user" : "ki" } } } ``` 或者可以增加一些高级设置: ``` GET /_search { "query": { "fuzzy" : { "user" : { "value" : "ki", "boost" : 1.0, "fuzziness" : 2, "prefix_length" : 0, "max_expansions": 100 } } } } ``` ### 参数列表 | 参数 | 说明 | | --- | --- | | _fuzziness_ | 最大编辑距离,默认为 **AUTO** 。请参阅选项名为 **[“Fuzzinessedit”](https://www.elastic.co/guide/en/elasticsearch/reference/current/common-options.html#fuzziness)** 的部分。 | | _prefix_length_  | 不会 **“fuzzified”** 的初始字符数,这有助于减少必须检查的术语的量,默认值为0。 | | _max_expansions_  | **模糊查询**将扩展到的最大项数,默认值为50。 | 如果 _prefix_length_ 设置为0,并且 _max_expansions_ 设置为一个高数字,这个查询可能非常重量级。它可能导致索引中的每个术语被检查!