布尔值(bool)查询|学习笔记

简介: 快速学习布尔值(bool)查询。

开发者学堂课程【ElasticSearch 最新快速入门教程布尔值(bool)查询】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/642/detail/10676


布尔值(bool)查询

 

内容介绍:

一、返回匹配 address=mill&address=lane

二、返回匹配 address=mill or address=lane

三、返回不匹配 address=mill & address=lane

四、返回 age=40 & state! =ID

 

一、返回匹配 address=mill&address=lane

curl -XPOST’localhost:9200/bank/_search?pretty' -d

‘{

“query":{

"bool":{

“must":{

{"match":{"address":"mill"}},

{“match": {"acdress":"lane"}}

}

}

查询代码:

{

“query":{

"bool":{

“must":{

{

“match": {

"acdress":"mill"

}

},

{

“match": {

"acdress":"lane"

}

}

}

}

}

}

查询结果:

image.png

注意:

must:要求所有条件都要满足(类似于&&)

should:任何一个满足就可以(类似||)

must_not:所有条件都不能满足(类似于!(&&))

 

二、返回匹配 address=mill or address=lane

curl -XPOST’localhost:9200/bank/search?pretty'-d

“{

“query":{

"bool":{

"should": {

{"match":{"address":"mill"}},

{"match":{"address":"lane"}}

}

}

}

}

查询代码:

{

“query":{

"bool":{

“should":{

{

“match": {

"acdress":"mill"

}

},

{

“match": {

"acdress":"lane"

}

}

}

}

}

}

查询结果:

image.png


三、返回不匹配 address=mill & address=lane

curl -XPOST’localhost:9200/bank/search?pretty'-d

‘{

“query":{

"bool":{

"must_not": {

{"match":{"address":"mill"}},

{"match":{"address":"lane"}}

}

}

}

}

查询代码:

{

“query":{

"bool":{

“must_not":{

{

“match": {

"acdress":"mill"

}

},

{

“match": {

"acdress":"lane"

}

}

}

}

}

}

查询结果:

image.png

四、返回 age=40 & state! =ID

curl-XPOST 'localhost:9200/bank/_search?pretty' -d

{

“query”:{

“bool”:{

“must”:{

{“match”: {“age”:40}}

}

“must_not”:{

{“match”: (“state”:”ID”))

}

}

}

}

查找代码:

{

“query”:{

“bool”:{

“must”:{

“match”: {

“age”:”40”

}

},

“must_not”:{

“match”:{

“state”:”ID”

}

}

}

}

}

查询结果:

image.png

注意:

若返回 state=ID,把 must_not 改为 must 即可

相关文章
|
XML JSON 前端开发
官方Lottie库能力增强实现
背景Lottie提供了播放复杂、酷炫动能力画,在移动端被广泛利用。在我们的应用中也被频繁、大量使用。它使用简单,仅需几行代码就能播放设计师设计的动画,帮助开发节省了时间成本。也正因为使用频繁,在使用过程中我们遇到了一些相关的问题。使用Lottie支持加载本地文件播放,也支持远程下载zip,json文件进行播放。这俩者在我们平时开发中都有使用到。本地播放本地播放比较简单。可以直接在xml实现,也可以
1621 0
官方Lottie库能力增强实现
|
搜索推荐 前端开发 JavaScript
什么是百度优化?百度SEO优化解决方案
百度优化的解决方案不仅可以帮助企业提升网站在百度PC端的收录与关键词排名,也可以获得更好的移动端收录与关键词排名,从而达到品牌SEO推广及引流的目的。接下来小编为你详细分享什么是百度优化以及实用的解决方案,一起来看看吧。
1732 0
|
安全 Java Linux
|
8月前
|
存储 消息中间件 缓存
RocketMQ原理—3.源码设计简单分析下
本文介绍了Producer作为生产者是如何创建出来的、启动时是如何准备好相关资源的、如何从拉取Topic元数据的、如何选择MessageQueue的、与Broker是如何进行网络通信的,Broker收到一条消息后是如何存储的、如何实时更新索引文件的、如何实现同步刷盘以及异步刷盘的、如何清理存储较久的磁盘数据的,Consumer作为消费者是如何创建和启动的、消费者组的多个Consumer会如何分配消息、Consumer会如何从Broker拉取一批消息。
403 11
RocketMQ原理—3.源码设计简单分析下
|
算法 Linux C++
C++框架设计中实现可扩展性的方法
在软件开发中,可扩展性至关重要,尤其对于C++这样的静态类型语言。本文探讨了在C++框架设计中实现可扩展性的方法:1) 模块化设计降低耦合;2) 使用继承和接口实现功能扩展;3) 通过插件机制动态添加功能;4) 利用模板和泛型提升代码复用;5) 遵循设计原则和最佳实践;6) 应用配置和策略模式以改变运行时行为;7) 使用工厂和抽象工厂模式创建可扩展的对象;8) 实现依赖注入增强灵活性。这些策略有助于构建适应变化、易于维护的C++框架。
910 2
|
10月前
|
人工智能 自然语言处理 持续交付
通义灵码:开启 AI 原生研发新范式
通义灵码是基于通义大模型的AI研发辅助工具,提供代码智能生成、研发智能问答、多文件代码修改及自主执行等功能。它能根据自然语言描述快速生成高质量代码,解答技术问题,批量修改代码并自动执行任务,显著提升开发效率,降低开发门槛,引领AI原生研发新范式。尽管依赖网络,其高效、易用和多功能特性仍为开发者带来极大便利。
|
11月前
|
安全 Java 程序员
面试直击:并发编程三要素+线程安全全攻略!
并发编程三要素为原子性、可见性和有序性,确保多线程操作的一致性和安全性。Java 中通过 `synchronized`、`Lock`、`volatile`、原子类和线程安全集合等机制保障线程安全。掌握这些概念和工具,能有效解决并发问题,编写高效稳定的多线程程序。
311 11
|
安全 前端开发 JavaScript
什么是 CSRF 攻击?如何启用 CSRF 保护来抵御该攻击?
什么是 CSRF 攻击?如何启用 CSRF 保护来抵御该攻击?
1822 5
解决一个mybatisplus left join里有ur报错问题
解决一个mybatisplus left join里有ur报错问题
282 0
|
安全 存储 网络安全
信息安全管理与评估DCST-6000B-Pro神州数码堡垒机沙箱连接教程
信息安全管理与评估DCST-6000B-Pro神州数码堡垒机沙箱连接教程
信息安全管理与评估DCST-6000B-Pro神州数码堡垒机沙箱连接教程