6.9. Elasticsearch 查询入门

本教程最新版为 8.x,当前版本已放弃维护,请阅读最新版本!

Elasticsearch 查询入门

经过前面几节我们完成了搜索的准备工作,本章节我们将要学习一些 Elasticsearch 的查询语句。

1. 布尔与词项查询

在开始之前,我们先简单了解一下 Elasticsearch 的布尔查询(Bool Query)。布尔查询与 SQL 语言中的 and / or 有些类似,可以根据多个条件来筛选文档。

布尔查询下可以有 filter / must / should / must_not 4 类条件,每个类条件对应的项都是一个数组,数组内每个项对应一个条件。其中 filtermust 与 SQL 中的 and 类似,查询的文档必须符合这两类下的条件,只不过 must 下的条件会参与 打分filter 下的条件不会;must_notmust 相反,查询的文档必须不符合此类下的条件;should 下的条件不需要全部满足,默认情况下只需要满足 should 下的一个条件即可,也可以通过 minimum_should_match 参数来改变需要满足的个数,满足的 should

本文章首发在 LearnKu.com 网站上。

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 7

jingzhongwa
商品添加属性之后 ES 报错
1 个点赞 | 5 个回复 | 问答 | 课程版本 5.5
bossaiguo
Elasticsearch 如何实时同步 MySQL 中的数据?
1 个点赞 | 2 个回复 | 问答 | 课程版本 5.8
犰狳
排序失败 "reason":"Fielddata is disabled on text fields by default.?
0 个点赞 | 12 个回复 | 问答 | 课程版本 5.5
Flourishing
老师,是不是这里加上一步好一些呢?
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.5
Sher
多字段匹配查询支持 Nested 对象
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
xiaocao
更新商品索引,捕获 ‘非法参数’ 异常?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
翟宇鑫
多字段匹配查询支持 Nested 对象
0 个点赞 | 0 个回复 | 分享 | 课程版本 6.x