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

Elasticsearch 系列专题 - 第三篇:搜索与查询

搜索是 Elasticsearch 的核心功能之一。本篇将介绍如何构建高效的查询、优化搜索结果,以及调整相关性评分,帮助你充分发挥 Elasticsearch 的搜索能力。


1. 基础查询

1.1 Match Query 与 Term Query 的区别
  • Match Query:用于全文搜索,会对查询词进行分词。

    GET /my_index/_search
    {
      "query": {
        "match": {
          "title": "Elasticsearch 入门"
        }
      }
    }
    
    • 匹配包含 “Elasticsearch” 或 “入门” 的文档。
    • 适用于 text 类型字段。
  • Term Query:用于精确匹配,不分词。

    GET /my_index/_search
    {
      "query": {
        "term": {
          "author.keyword": "text"
        }
      }
    }
    
    • 仅匹配 author 精确为 “Text” 的文档。
    • 适用于 keyword 类型字段。
1.2 多条件查询(Bool Query)

Bool Query 组合多个条件:

  • must:必须满足(AND)。
  • should:至少满足一个(OR)。
  • must_not:必须不满足(NOT)。
  • filter:过滤,不影响评分。

示例:

GET /my_index/_search
{
  "query": {
    "bool": {
      "must": { "match": { "title": "Elasticsearch" } },
      "filter": { "term": { "author.keyword": "Text" } },
      "must_not": { "range": { "date": { "lte": "2025-01-01" } } }
    }
  }
}

Mermaid 图示 - Bool Query 逻辑

http://www.dtcms.com/a/123124.html

相关文章:

  • 超越肉眼所见:一种利用视网膜光学相干断层扫描血管成像(OCTA)图像进行早期痴呆检测的关联模型|文献速递-深度学习医疗AI最新文献
  • linux内核
  • 2021-10-19 C++奇怪数
  • 牟乃夏《ArcGIS Engine地理信息系统开发教程》学习笔记1
  • MCU控制4G模组(标准AT命令),CatM的最大速率?
  • 学习笔记四——Rust 函数通俗入门
  • 城电科技 | 从概念到落地:如何打造真正的智慧零碳园区?
  • 粘性定位(position:sticky)——微信小程序学习笔记
  • Diffusion Policy Visuomotor Policy Learning via Action Diffusion官方项目解读(二)(6)
  • 阿里云 AI 搜索开放平台:从算法到业务——AI 搜索驱动企业智能化升级
  • js逆向入门图灵爬虫练习平台第六题
  • AI小程序+SpringAI+管理后台+源码+支持动态添加大模型+支持动态添加AI应用
  • ESP8266水位监测以及温湿度数据采集
  • 008二分答案+贪心判断——算法备赛
  • HDCP(二)
  • 爱普生TG-5510CA和TG-5510CB晶振成为服务器中的理想之选
  • SLAM文献之SuMa++: Efficient LiDAR-based Semantic SLAM
  • AI测试之Midscene.js
  • 英语单词 list 9
  • 图神经网络+多模态:视频动作分割的轻量高效新解法
  • Vue3的Composition API与React Hooks有什么异同?
  • 深度学习总结(6)
  • 皮质醇水平高低对健康的影响及科学建议
  • 【AI论文】GPT-4o图像生成能力的实证研究
  • DP主站如何华丽变身Modbus TCP网关!
  • 表格计算 | 第六届蓝桥杯国赛JavaB组
  • linux下io操作详细解析
  • Pandas分块读取技术:高效处理大数据的秘密武器
  • Mysql自动增长数据的操作(修改增长最大值)
  • go-zero学习笔记(六)---gozero中间件介绍