专栏首页cwl_JavaElasticSearch(7.2.2)-es的布尔查询

ElasticSearch(7.2.2)-es的布尔查询

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_42528266/article/details/102804722

简介:⼿把⼿带你玩转es的布尔查询

布尔查询

must (查找名字叫做James的球员)

POST /nba/_search
{
	"query": {
		"bool": {
			"must": [{
				"match": {
					"displayNameEn": "james"
				}
			}]
		}
	}
}

效果同must,但是不打分(查找名字叫做James的球员)

POST /nba/_search
{
	"query": {
		"bool": {
			"filter": [{
				"match": {
					"displayNameEn": "james"
				}
			}]
		}
	}
}

must_not (查找名字叫做James的⻄部球员)

POST /nba/_search
{
	"query": {
		"bool": {
			"must": [{
				"match": {
					"displayNameEn": "james"
				}
			}],
			"must_not": [{
				"term": {
					"teamConferenceEn": {
						"value": "Eastern"
					}
				}
			}]
		}
	}
}

should(查找名字叫做James的打球时间应该在11到20年⻄部球员)

  • 即使匹配不到也返回,只是评分不同
POST /nba/_search
{
	"query": {
		"bool": {
			"must": [{
				"match": {
					"displayNameEn": "james"
				}
			}],
			"must_not": [{
				"term": {
					"teamConferenceEn": {
						"value": "Eastern"
					}
				}
			}],
			"should": [{
				"range": {
					"playYear": {
						"gte": 11,
						"lte": 20
					}
				}
			}]
		}
	}
}
  • 如果minimum_should_match=1,则变成要查出名字叫做James的打球时间在11到20年⻄部球员
POST /nba/_search
{
	"query": {
		"bool": {
			"must": [{
				"match": {
					"displayNameEn": "james"
				}
			}],
			"must_not": [{
				"term": {
					"teamConferenceEn": {
						"value": "Eastern"
					}
				}
			}],
			"should": [{
				"range": {
					"playYear": {
						"gte": 11,
						"lte": 20
					}
				}
			}],
			"minimum_should_match": 1
		}
	}
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 快速学习-Scala Unit类型、Null类型和Nothing类型

    cwl_java
  • 经典面试题-组合和聚合的区别

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    cwl_java
  • C++经典算法题-兔子增长题

    古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

    cwl_java
  • 35-函数-九九乘法表

    凯茜的老爸
  • Android 上关于设备唯一标识的调研

    什么是IMEI? IMEI(International Mobile Equipment Identity)是国际移动设备身份码的缩写,国际移动装备辨识码,是由...

    用户1269200
  • 如何让你写的爬虫速度像坐火箭一样快【并发请求】

    首先,我们需要知道什么是并发,这里的并发指的是“并行发送请求”,意思就是一次性发出多个请求,从而达到节省时间的效果!那么并发和不并发的区别在哪呢?简单来说就是这...

    Python进击者
  • Diy飞行器制作流程(纯手工写噢)

    2015年花了一个假期做好了一个小灰机,一方面被坑的太惨,希望广大同胞别走我们的弯路,另一方我们也要记录自己制作的经验。

    十四君
  • 如何让你写的爬虫速度像坐火箭一样快【并发请求】

    话不多说,我们正式开始。在提升爬虫的速度这方面,最基础、最有效、最直接的操作是什么呢?没错,就是并发请求,如果你的爬虫整个逻辑是顺序执行的,请求的时候永远不会并...

    sergiojune
  • 把CNN里的乘法全部去掉会怎样?华为提出移动端部署神经网络新方法

    深度学习模型,尤其是深度卷积神经网络(DCNN),在多个计算机视觉应用中获得很高的准确率。但是,在移动环境中部署时,高昂的计算成本和巨大的耗电量成为主要瓶颈。而...

    CV君
  • React 折腾记 - (7) 基于React+Antd封装聊天记录(用到React的memo,lazy, Suspense这些)

    CRPER

扫码关注云+社区

领取腾讯云代金券