当前位置: 首页 > article >正文

【2】Elasticsearch 查询从基础到高级

文章目录

    • 一、引言
    • 二、常用查询方式
      • (一)简单查询
      • (二)聚合查询
      • (三)复杂查询
    • 三、查询关键词
      • (一)比较关键词
      • (二)逻辑关键词
      • (三)其他关键词
    • 四、常用统计类查询
      • (一)计数统计
      • (二)平均值统计
    • 五、总结

一、引言

Elasticsearch是一款强大的分布式搜索和分析引擎,在数据检索和分析领域有着广泛的应用。掌握其查询方式是充分发挥Elasticsearch功能的关键,本文将详细介绍ES的常用查询方式。

二、常用查询方式

(一)简单查询

  1. match查询
    • 原理与应用场景:match查询会对查询条件进行分词处理。适用于全文搜索,例如在文章内容字段中查找包含特定关键词的文档。
    • demo
{
   
    "query": {
   
        "match": {
   
            "article_content": "数据分析"
        }
    }
}

在上述示例中,我们在article_content字段中查找包含“数据分析”的文档。Elasticsearch会将“数据分析”分词为“数据”和“分析”,然后查找包含这两个词的文档。
2. term查询

  • 原理与应用场景:term查询是精确匹配,不会对查询词进行分词。常用于查询结构化数据,如数字、日期、布尔值等。
  • demo
{
   
    "query": {
   
        "term": {
   
            "status": "active"
        }
    }
}

这里查询status字段精确为“active”的文档。如果status是一个未分词的字段,如布尔值或特定编码值,term查询能准确找到匹配项。

(二)聚合查询

  1. 分组(terms聚合)
    • 功能与应用场景:terms聚合用于对某个字段进行分组统计。例如,统计不同类别产品的数量。
    • demo
{
   
    "size": 0,
    "aggs": {
   
        &

http://www.kler.cn/a/377972.html

相关文章:

  • SD ComfyUI工作流 对人物图像进行抠图并替换背景
  • Win Server远程提示密码到期
  • 【每日学点鸿蒙知识】gbk2313传到native、NAPI打印日志问题、table表格控件、Web 触发新窗口卡住、修饰列表
  • 阶乘分布(Factorial Distribution)和变分推断中的均场(Mean Field)方法:中英双语
  • 开源轻量级文件分享服务Go File本地Docker部署与远程访问
  • Mysql数据库中,监测某张表中某字段的修改情况(被哪个ip所修改、新老值)
  • jsweb2
  • Java实现动态切换ubuntu壁纸功能
  • 自定义日志打成jar包引入项目后不生效
  • 3D Gaussian Splatting 入门
  • 8.5K+ Star!Skyvern:一个基于LLMs和计算机视觉自动化浏览器工作流的工具
  • Day 41 || 1049. 最后一块石头的重量 II 、494. 目标和、474.一和零
  • 机器学习之fetch_olivetti_faces人脸识别--基于Python实现
  • 数据智能驱动金融策略优化:民锋智能分析技术的应用
  • 深度学习-38-基于PyTorch的卷积神经网络AlexNet
  • 【Java笔记】1-JDK/JRE/JVM是个啥?
  • Golang | Leetcode Golang题解之第518题零钱兑换II
  • pgsql数据量大之后可能遇到的问题
  • SpringCloudAlibaba实战入门之OpenFeign高级用法(十)
  • 数据结构-二叉树中的递归
  • [每周一更]-(第121期):模拟面试|微服务架构面试思路解析
  • 虚函数和纯虚函数是 C++ 中实现多态性的关键概念
  • 【算法笔记】位运算算法原理深度剖析
  • 单向函数、单向陷门函数、困难问题
  • PHP的 CSRF、XSS 攻击和防范
  • promise的catch放在then前面的场景