ElaticSearch 查询

本文介绍了Elasticsearch中的查询方法,包括使用GET参数和body传参进行条件查询,如match查询。同时,展示了如何实现排序、分页,以及使用bool查询进行多条件组合。此外,还涵盖了过滤操作,如range过滤年龄,并利用highlight进行搜索结果的高亮显示。
摘要由CSDN通过智能技术生成

条件查询

参数拼接

GET first_index/_search?q=name:小朱

body传参查询

get first_index/_search
{
    "query": {
        "match": {
            "name": "小朱"
        }
    }
}

排序分页

GET first_index/_search
{
  "query": {
    "match": {
      "name": "小朱"
    }
  },
  // 排序
  "sort": [
    {
      "age": {
        "order": "desc"
      }
    }
  ],
  // 分页页数
  "from": 0,
   // 分页大小
  "size": 1,
   // 查询字段
  "_source": ["title"]
}

在这里插入图片描述

多条件查询

must是多个条件同时成立,相当于and。should是其中一个条件成立就可以相当于or。

GET first_index/_search
{
  "query": {
    "bool": {
      "must": [
      // 条件一:name匹配小黄
        {"match": {
          "name": "小黄"
        }},
        // 条件二: age等于18
        {
          "match": {
            "age": 18
          }
        }
      ]
    }
  }
}

在这里插入图片描述

过滤

使用filter进行过滤,其中gt大于,gte大于等于,lt小于,lte小于等于

GET first_index/_search
{
  "query": {
    "bool": {
      "must": [
        {"match": {
          "name": "啊黄"
        }},
        {
          "match": {
            "age": 21
          }
        }
      ],
      "filter": [
        {
          "range": {
            "age": {
              "gte": 10
            }
          }
        }
      ]
    }
  }
}

在这里插入图片描述

高亮处理

GET first_index/_search
{
  "query": {
    "match": {
      "name": "小黄"
    }
  },
  "highlight": {
  // 开始标签
    "pre_tags": "<p>", 
    // 结束标签
    "post_tags": "</p>", 
    // 高亮字段
    "fields": {
      "name": {}
    }
  }
}

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值