ElasticSearch 复合查询 Boolean Query

官网文档网址:Boolean query | Elasticsearch Guide [7.17] | Elastic

目录

[复合查询 Boolean Query](#复合查询 Boolean Query)

利用bool查询实现功能

总结


复合查询 Boolean Query

布尔查询是一个或多个查询子句的组合。子查询的组合方式有:

  • must:必须匹配每个子查询,类似"与
  • should:选择性匹配子查询,类似"或"
  • must not:必须不匹配,不参与算分,类似"非
  • filter:必须匹配,不参与算分

利用bool查询实现功能

案例:搜索名字包含"如家",价格不高于400,在坐标31.21121.5周围10km范围内的酒店

GET /hotel/_search

{

"query" : {

"bool" : {

"must" : [

{

"match": {"name":"如家"}

}

],

"must_not" : [

{

"range": { "price": { "gt" : 400 }}

}

],

"filter" : [

{

"geo_distance" : {

"distance":"10km" ,

"location": "lat": 31.21 , "lon": 121.5}

}

}

]

}

}

}

总结

bool查询有几种逻辑关系?

  • must:必须匹配的条件,可以理解为 "与"
  • should:选择性匹配的条件,可以理解为 "或"
  • must_not:必须不匹配的条件,不参与打分
  • filter:必须匹配的条件,不参与打分
相关推荐
千寻技术帮11 小时前
10361_基于Springboot的哈尔滨旅游管理系统
数据库·spring boot·mysql·毕业设计·旅游
步菲12 小时前
springboot canche 无法避免Null key错误, Null key returned for cache operation
java·开发语言·spring boot
毕设源码-朱学姐12 小时前
【开题答辩全过程】以 基于SpringBoot的中医理疗就诊系统为例,包含答辩的问题和答案
java·spring boot·后端
aigcapi16 小时前
RAG 系统的黑盒测试:从算法对齐视角解析 GEO 优化的技术指标体系
大数据·人工智能·算法
cui178756818 小时前
排队免单模式深度拆解:闭环逻辑、裂变内核与落地法则
大数据
Coder_Boy_18 小时前
SpringAI与LangChain4j的智能应用-(理论篇2)
人工智能·spring boot·langchain·springai
Coder_Boy_18 小时前
SpringAI与LangChain4j的智能应用-(理论篇3)
java·人工智能·spring boot·langchain
热爱专研AI的学妹18 小时前
数眼搜索API与博查技术特性深度对比:实时性与数据完整性的核心差异
大数据·开发语言·数据库·人工智能·python
武昌库里写JAVA19 小时前
iview-CRUD模板
vue.js·spring boot·sql·layui·课程设计
sinat_3842410919 小时前
HarmonyOS音乐播放器开发实战:从零到一打造完整鸿蒙系统音乐播放器应用 2
华为·gitlab·intellij-idea·harmonyos·visual studio·webstorm