添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

Elasticsearch模糊查询详细介绍

作者:躺平的菜鸡

这篇文章主要给大家介绍了关于Elasticsearch模糊查询的相关资料,在数据库查询中模糊查询是一种强大的技术,可以用来搜索与指定模式匹配的数据,需要的朋友可以参考下

Elasticsearch支持多种模糊查询,包括Wildcard查询、Fuzzy查询、Regexp查询和Match查询。这些查询可以用于执行模糊匹配、拼写纠错、范围查询等操作。下面是这些模糊查询的详细介绍。

1、Wildcard 查询

Wildcard 查询是一种基于通配符的查询,它使用单个字符(?)代表一个字符,使用星号(*)代表零个或多个字符。Wildcard 查询可用于对单个词执行模糊匹配,也可以用于对短语进行模糊匹配。它可以在搜索中用于查找某些词汇的变体或拼写错误的单词。

例如,以下查询将匹配包含任何以“elasti”开头的文档:

GET /my_index/_search
  "query": {
    "wildcard": {
      "title": "elasti*"

2、Fuzzy 查询

Fuzzy 查询是一种模糊查询,用于在文本中查找与指定单词相似的单词。它可以用于拼写纠错等操作。Fuzzy 查询使用编辑距离算法计算文本之间的相似度。

以下是一个使用 Fuzzy 查询的示例:

GET /my_index/_search
  "query": {
    "fuzzy": {
      "title": {
        "value": "elasticsearch",
        "fuzziness": "AUTO"

在上面的示例中,查询将返回所有与 "elasticsearch" 相似的文档。Fuzziness 参数指定了编辑距离的最大值,它可以是一个整数,也可以是 "AUTO",表示 Elasticsearch 将自动计算最佳的编辑距离。

3、Regexp 查询

Regexp 查询是一种基于正则表达式的查询,它可以用于在文本中查找匹配指定正则表达式的单词或短语。Regexp 查询非常灵活,但由于它需要对所有文档进行扫描,因此可能会影响性能。

以下是一个使用 Regexp 查询的示例:

GET /my_index/_search
  "query": {
    "regexp": {
      "title": "elasticsearch.*"

在上面的示例中,查询将匹配所有以 "elasticsearch" 开头的单词或短语的文档。

4、Match 查询

Match 查询是一种基于文本匹配的查询,它可以用于对文本进行全文搜索。Match 查询会将查询字符串分解为单词,并在索引中查找这些单词的匹配项。Match 查询是一种非常灵活的查询,可以用于执行模糊匹配、短语匹配、前缀匹配等操作。

以下是一个使用 Match 查询的示例:

GET /my_index/_search
  "query": {
    "match": {
      "title": "elasticsearch"

在上面的示例中,查询将匹配所有包含 "elasticsearch" 单词的文档。可以在查询中添加参数来进行模糊匹配、短语匹配等操作。

总之,Elasticsearch 提供了多种模糊查询,可以用于执行各种搜索操作。使用这些查询时,需要注意查询的性能和准确性,并根据实际情况选择最适合的查询类型。

到此这篇关于Elasticsearch模糊查询的文章就介绍到这了,更多相关es模糊查询内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • java使用xstream实现xml文件和对象之间的相互转换
    java使用xstream实现xml文件和对象之间的相互转换
    2023-09-09
  • 在java的Map集合中,如何更改value的值
    在java的Map集合中,如何更改value的值
    2023-09-09
  • SpringCloud使用Feign实现远程调用的使用示例
    SpringCloud使用Feign实现远程调用的使用示例
    2023-09-09
  • Springboot集成Quartz实现定时任务代码实例
    Springboot集成Quartz实现定时任务代码实例
    2023-09-09
  • Java之MultipartFile和File类型互转方式
    Java之MultipartFile和File类型互转方式
    2023-09-09
  • MyBatis Plus如何实现获取自动生成主键值
    MyBatis Plus如何实现获取自动生成主键值
    2023-09-09
  • SpringCloud使用Feign实现远程调用的使用示例
    SpringCloud使用Feign实现远程调用的使用示例
    2023-09-09
  • java对于JSON的解析方法举例详解
    java对于JSON的解析方法举例详解
    2023-09-09
  • 美国设下计谋,用娘炮文化重塑日本,已影响至中国
    美国设下计谋,用娘炮文化重塑日本,已影响至中国
    2021-11-19
  • 时空伴随者是什么意思?时空伴随者介绍
    时空伴随者是什么意思?时空伴随者介绍
    2021-11-09
  • 工信部称网盘企业免费用户最低速率应满足基本下载需求,天翼云盘回应:坚决支持,始终
    工信部称网盘企业免费用户最低速率应满足基本下载需求,天翼云盘回应:坚决支持,始终
    2021-11-05
  • 2022年放假安排出炉:五一连休5天 2022年所有节日一览表
    2022年放假安排出炉:五一连休5天 2022年所有节日一览表
    2021-10-26
  • 电脑版 - 返回首页

    2006-2024 脚本之家 JB51.Net , All Rights Reserved.
    苏ICP备14036222号