boolQuery | 学习笔记

简介: 快速学习 boolQuery

开发者学堂课程【ElasticSearch 入门精讲boolQuery学习笔记,与课程紧密连接,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/631/detail/10004


boolQery


内容介绍:

一、讲义

二、演示


一、讲义

组合查询(复杂查询

must(QueryBuilders): AND

mustNot(QueryBuilders): NOT

should(QueryBuilders):OR

在定义 json:放置到 Elasticsearch的插件中

{

"query":{

"bool":{

"must":{

"term":{

"title":"elasticsearch"

}

},

"should":{

"range":{

"id":{  

"from":1,

"to":2

        }

}SearchResponse searchResponse = client.prepareSearch("blog2").setTypes("article") .setQuery(QueryBuilders.boolQuery().must(QueryBuilderstermQuery("title","搜索").must(QueryBuilders.wildcardQuery("content","elagic*ch")).get();

SearchHits hits = searchResponse.getHits();//获取命中次数,查询结果有多少对象

二、演示

/**

* boolQuery 演示

*需求:查询索引库 bigdata 中的 type 之 product 中,name 为 hadoop,且 author 中包含了辛格的索引信息。

*/

@Test

public void testBoolQuery(){

 //检索

SearchResponse response = client.preparesearch(INDEX)

.setTypes (TYPE)

.setQuery(QueryBuilders.boolQuery()

.must(QueryBuilders.matchPhraseQuery(name: "name",value: "hadoop"))

.should(QueryBuilders.wildcardQuery(name: "author",query:"Sp*")))

.get();

//显示检索到的信息

SearchHits hits = response.getHits();

for (SearchHit hit : hits){

System.out.println(hit.getSourceAsString());

}

}

运行结果如图

image.png

要显示检索信息为施瓦辛格,修改代码

.should(QueryBuilders.wildcardQuery(name: "author",query:"Sp*")))

.should(QueryBuilders.matchPhraseQuery(name: "author",query:"Spark")))

运行结果如图

image.png

如要显示两条记录,则应该将 must 都换为 should,为或的关系,

.should(QueryBuilders.matchPhraseQuery(name: "name",value: "hadoop"))

如图

image.png

相关文章
|
SQL 开发框架 JSON
honeycomb使用|学习笔记
快速学习honeycomb使用
709 0
honeycomb使用|学习笔记
|
数据安全/隐私保护
【学习笔记之我要C】练习
【学习笔记之我要C】练习
74 0
|
数据采集 SQL 消息中间件
第三阶段总结|学习笔记
快速学习第三阶段总结
136 0
第三阶段总结|学习笔记
|
数据可视化 Java 开发工具
超详细的vimtutor学习笔记(中)
第一讲 编辑 1.1 移动光标 使用 h、j、k、l 键可以使光标实现左、下、上、右的移动。 也可以使用 ↑ ↓ ← → 进行上下左右的移动。
110 0
|
机器学习/深度学习 算法 开发者
总结与回顾| 学习笔记
快速学习总结与回顾。
总结与回顾| 学习笔记
|
C++ 开发者 Python
|
存储 Java 开发者
BinaryTree|学习笔记
快速学习BinaryTree
BinaryTree|学习笔记
|
开发者
SearchType 详解|学习笔记
快速学习 SearchType 详解。
260 0
|
云安全 安全 网络安全
总结 | 学习笔记
快速学习总结
108 0