IT袋

当前位置:主页 > 经验教程 > 建站编程 >

ElasticSearch常见用法

ElasticSearch常见用法 常见的ElasticSearch用法(3)

时间:2024-03-18 15:00:59 来源:IT袋 作者:马勇
导读:ElasticSearch常见用法,四、常见检索 1、查询所有[match_all] match_all关键字: 返回索引中的全部文档 GET /products/_search{ "query": { "match_all": {} }} 2、关键词查询(term) term 关键字: 用来使

ElasticSearch常见用法

四、常见检索

1、查询所有[match_all]

match_all关键字: 返回索引中的全部文档

GET /products/_search
{
  "query": {
    "match_all": {}
  }
}

2、关键词查询(term)

term 关键字: 用来使用关键词查询

GET /products/_search
{
 "query": {
   "term": {
     "price": {
       "value": 4999
     }
   }
 }
}

NOTE1: 通过使用term查询得知ES中默认使用分词器为标准分词器(StandardAnalyzer),标准分词器对于英文单词分词,对于中文单字分词。

NOTE2: 通过使用term查询得知,在ES的Mapping Type 中 keyword , date ,integer, long , double , boolean or ip 这些类型不分词,只有text类型分词。

3、范围查询[range]

range 关键字: 用来指定查询指定范围内的文档

GET /products/_search
{
  "query": {
    "range": {
      "price": {
        "gte": 1400,
        "lte": 9999
      }
    }
  }
}

4、前缀查询[prefix]

prefix 关键字: 用来检索含有指定前缀的关键词的相关文档

GET /products/_search
{
  "query": {
    "prefix": {
      "title": {
        "value": "ipho"
      }
    }
  }
}

5、通配符查询[wildcard]

wildcard 关键字: 通配符查询     ? 用来匹配一个任意字符  * 用来匹配多个任意字符

GET /products/_search
{
  "query": {
    "wildcard": {
      "description": {
        "value": "iphon*"
      }
    }
  }
}

6、多id查询[ids]

ids 关键字 : 值为数组类型,用来根据一组id获取多个对应的文档

GET /products/_search
{
  "query": {
    "ids": {
      "values": ["verUq3wBOTjuBizqAegi","vurUq3wBOTjuBizqAegk"]
    }
  }
}

7、模糊查询[fuzzy]

fuzzy 关键字: 用来模糊查询含有指定关键字的文档

GET /products/_search
{
  "query": {
    "fuzzy": {
      "description": "iphooone"
    }
  }
}

注意: fuzzy 模糊查询 最大模糊错误 必须在0-2之间

  1. 搜索关键词长度为 2 不允许存在模糊
  2. 搜索关键词长度为3-5 允许一次模糊
  3. 搜索关键词长度大于5 允许最大2模糊

8、布尔查询[bool]

  1. bool 关键字: 用来组合多个条件实现复杂查询
  2. must: 相当于&& 同时成立
  3. should: 相当于|| 成立一个就行
  4. must_not: 相当于! 不能满足任何一个
GET /products/_search
{
  "query": {
    "bool": {
      "must": [
        {"term": {
          "price": {
            "value": 4999
          }
        }}
      ]
    }
  }
}

9、多字段查询[multi_match]

相关阅读

  • 求生之路1怎么联机局域网 求生之路2本地服务器联机教程

    求生之路1怎么联机局域网 求生之路2本地服务器联机教程

    小编为你介绍求生之路1怎么联机局域网和求生之路2本地服务器联机教程方面的讲解,下面来一起了解一下吧。 说到玩游戏,相信很多小伙伴都会在自己下班后的休息时间里,或者是周末宅在

  • dreamweaver新手教程快速入门 学生个人网页制作html

    dreamweaver新手教程快速入门 学生个人网页制作html

    今日小编为你讲解学生个人网页制作html和dreamweaver新手教程快速入门的内容,下面为您详细介绍 伴随着互联网时代的到来,网页制作已经成为越来越多人感兴趣的一项技能。学习网页制作也成

  • 什么是微服务、容器和Kubernetes

    什么是微服务、容器和Kubernetes

    今日重点为您介绍什么是微服务、容器和Kubernetes的电脑方面的小经验,下面IT袋网为您详细介绍 什么是微服务? 什么是微服务?你应该使用微服务吗?微服务与容器和 Kubernetes 有什么关系?

  • OpenSSL命令详解:一篇全面深入的教程

    OpenSSL命令详解:一篇全面深入的教程

    全面的为您讲解OpenSSL命令详解的相关介绍,具体介绍如下: OpenSSL是一个开源项目,提供了一个健壮、全特性且高度灵活的工具包,主要用于安全传输协议和加密算法的实现。 在本文中,我们