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:必须匹配的条件,不参与打分
相关推荐
Elastic 中国社区官方博客2 分钟前
使用 Remote Write 将 Prometheus 指标发送到 Elasticsearch
大数据·运维·elasticsearch·搜索引擎·全文检索·prometheus
金融大 k13 分钟前
Spring Boot WebSocket 实时行情推送实战:从断线重连到并发优化
spring boot·后端·websocket
小t说说22 分钟前
2026年PPT生成工具评测及使用体验
大数据·前端·人工智能
IT观测1 小时前
数字化转型浪潮下的西安样本:从“摩高互动”看企业级技术服务的破局之道
大数据·人工智能
Mr-Wanter1 小时前
踩坑记录:IDEA 启动服务连续三次 OOM 内存溢出完整解决
java·ide·intellij-idea·oom
想你依然心痛1 小时前
大数据时代时序数据库选型指南:Apache IoTDB 的实战进阶与避坑法则
大数据·apache·时序数据库
2601_949818091 小时前
SpringBoot项目集成ONLYOFFICE
java·spring boot·后端
35岁程序员的自救之路1 小时前
2026年社区系统选型指南:拒绝“缝合怪”,拥抱“AI原生”一体化方案
大数据·人工智能·ai-native
登山人在路上1 小时前
RAGAS 中的已知偏差详解
人工智能·全文检索·ai编程
千里念行客2401 小时前
康华生物拐点已至:狂苗龙头加速转型 开启预防+治疗双轮增长新征程
大数据·科技·安全·健康医疗