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

es: minimum_should_match的作用

一,minimum_should_match

什么是 minimum_should_match?
minimum_should_match 用于指定在 should 子句中至少需要匹配多少个条件才能返回文档。它可以用以下方式表示:

数字:2 表示至少匹配 2 个条件
百分比:"60%" 表示至少匹配 60% 的条件
组合:"2<75%" 表示少于 2 个时全部匹配,2 个或以上时匹配 75%

二,场景 1:只有 should 子句

当 bool 查询中只有 should 子句时,minimum_should_match 会生效:

{"query": {"bool": {"should": [{ "match": { "title": "疫苗" } },{ "match": { "content": "疫苗" } },{ "match": { "abstract": "疫苗" } }],"minimum_should_match": 2}}
}

效果:文档必须至少匹配 3 个 should 条件中的 2 个才会被返回

三,场景 2:should + must 组合

当 bool 查询中同时有 must 和 should 子句时:

{"query": {"bool": {"must": [{ "match": { "status": "published" } }],"should": [{ "match": { "title": "疫苗" } },{ "match": { "content": "疫苗" } }],"minimum_should_match": 1}}
}

效果

  • must 条件必须全部匹配(无条件)
  • should 条件中至少匹配 1 个(由 minimum_should_match 控制)

四,match 查询中的 minimum_should_match 直接控制词项匹配:

{"query": {"match": {"title": {"query": "疫苗 开发 研究","minimum_should_match": "60%"}}}
}

效果:标题字段中至少需要匹配 3 个词项中的 2 个(60%)。

match的常用场景:

{"query": {"multi_match": {"query": "疫苗 开发 研究","fields": ["title^2", "content"],"type": "best_fields","minimum_should_match": "75%"}}
}

效果:在多个字段中搜索,至少匹配 75% 的词项。

 

http://www.jsqmd.com/news/111567/

相关文章:

  • mpg123 库播放mp3
  • 2025最新虾青素保健品PQQ口服抗衰产品公司首推育培生:循证医学赋能,精准守护健康本源 - 全局中转站
  • 第二十一
  • ArchLinux 禁用 nouveau
  • Linux的PWM子系统简析
  • 第十六
  • 实用指南:Spring Boot、Redis、RabbitMQ 在项目中的核心作用详解
  • 第十七
  • VXDIAG VCX-FD GM Intelligent All-in-One Diagnostic Tool for Chevrolet, Buick, Cadillac, Opel, Holden
  • 10.31澳洲网安法规与现有法规对比
  • 通达信判断是指数
  • 第十八
  • 2025最新补精生精产品补肾壮阳补品品牌top10推荐!循证医学精准营养优质品牌榜单发布,助力两性健康养护 - 全局中转站
  • 2025最新补精生精产品补肾壮阳补品品牌top10推荐!循证医学精准营养优质品牌榜单发布,助力两性健康养护 - 全局中转站
  • 12-18午夜盘思
  • Cursor 开源替代
  • uni-app + DevEco 鸿蒙跨平台应用开发实战1-环境安装分享 - 实践
  • VXDIAG VCX SE DOIP Diagnostic Tool: 13-in-1 for 13+ European/American Car Brands
  • 揭秘:如何用0.02/张调用Openai官方GPT Image 1.5?国内直连方案大公开
  • IOI 2026 中国国家集训队作业(试题泛做)个人题解
  • Spring Boot 学习笔记:项目搭建、分层架构与核心技术集成 - 详解
  • 鼻窦炎
  • xinference初探
  • 20251218
  • Manacher 算法详解:线性时间求最长回文子串
  • 海南封关,你应该知道的10个新常识
  • 搜维尔科技:全新上线!Xsens Link机器人套装和Xsens Humanoid软件:专为机器人创新者打造
  • Linux核心命令 - 十里
  • 10379_基于SSM的校园跑腿服务平台
  • 我如何理解 Flutter 本质 - 详解