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:必须匹配的条件,不参与打分
相关推荐
JAMSAN09302 分钟前
视线即交互:眼动追踪AR眼镜的“感知革命”与市场蓝图
大数据·人工智能·ar·交互
冷色调的咖啡师8 分钟前
1.大数据架构技术 上——搭建分布式Hadoop集群
大数据·linux·hadoop·分布式·hdfs·架构·yarn
cg.family8 分钟前
Hadoop vs Kubernetes 对比记忆
大数据·hadoop·kubernetes
linweidong10 分钟前
Java 后端开发面试 50 个高频易混淆知识点详解
java·spring boot·spring·spring cloud·面试·mybatis·spring事务
码语智行10 分钟前
应用启动和关闭监听器功能分析
java·spring boot
AI进阶客栈11 分钟前
开源 MQ Master:Spring Boot 统一管控 5 大消息队列
spring boot·后端·开源
智慧景区与市集主理人9 小时前
巨有科技会员积分系统|深耕私域存量,破解景区复购增收难题
大数据·科技
Litluecat11 小时前
2026年6月1日科技热点新闻
大数据·人工智能·科技·推荐·热点·新闻·每日
志栋智能11 小时前
AI驱动无代码:降低巡检超自动化的门槛
大数据·运维·网络·人工智能·自动化
代码匠心11 小时前
从零开始学Flink:Flink CDC 入门
大数据·数据仓库·flink