elasticsearch高级组合查询ava
/**
* 高级检索(组合条件检索)must相当于sql and操作
* @param modelType 0为模糊查询,1为精确查询
* @param index 索引
* @param map key为查询字段和value为查询内容
* @param Page 分页页码
* @param Pagesize 每页显示条数
* @return SearchHits
*/
public static SearchHits AdvancedQuery1(Integer modelType,String index,Map<String,String> map,int Page,int Pagesize){
SearchRequestBuilder sr =transportClient.prepareSearch(index);
BoolQueryBuilder queryBuilder=QueryBuilders.boolQuery();
System.out.println(index);
if(modelType==0){
for(Map.Entry<String, String> entry : map.entrySet()){
//wildcardQuery 模糊查询
queryBuilder.must(QueryBuilders.wildcardQuery(entry.getKey(), entry.getValue()+"*"));
}
}
else if(modelType==1){
for(Map.Entry<String, String> entry : map.entrySet()){
//termQuery 查询精确
queryBuilder.must(QueryBuilders.termQuery(entry.getKey(),entry.getValue()));
}
}
sr.setQuery(queryBuilder)
.setFrom((Page-1)*Pagesize)
.setSize(Pagesize);
SearchResponse response=sr.get();
SearchHits hits=response.getHits();
return hits;
}
elasticsearch高级组合查询ava的更多相关文章
- ELK 学习笔记之 elasticsearch bool组合查询
elasticsearch bool组合查询: 相当于sql:where _type = 'books' and (price = 500 or title = 'bigdata') Note: mu ...
- 第三百六十六节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的bool组合查询
第三百六十六节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的bool组合查询 bool查询说明 filter:[],字段的过滤,不参与打分must:[] ...
- 四十五 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的bool组合查询
bool查询说明 filter:[],字段的过滤,不参与打分must:[],如果有多个查询,都必须满足[并且]should:[],如果有多个查询,满足一个或者多个都匹配[或者]must_not:[], ...
- ElasticSearch高级查询
ElasticSearch高级查询 https://www.imooc.com/video/15759/0 ElasticSearch查询 1,子条件查询:特定字段查询所指特定值 1.1query c ...
- 关系数据库SQL之高级数据查询:去重复、组合查询、连接查询、虚拟表
前言 接上一篇关系数据库SQL之基本数据查询:子查询.分组查询.模糊查询,主要是关系型数据库基本数据查询.包括子查询.分组查询.聚合函数查询.模糊查询,本文是介绍一下关系型数据库几种高级数据查询SQL ...
- Webform(Linq高级查、分页、组合查询)
一.linq高级查 1.模糊查(包含) 1 public List<User> Select(string name) 2 { 3 return con.User.Where(r => ...
- LinQ高级查询、组合查询、IQueryable集合类型
LinQ高级查询: 1.模糊查询(包含) Repeater1.DataSource = con.car.Where(r =>r.name.Contains(s)).ToList(); 2.开头 ...
- 【知识库】-数据库_MySQL之高级数据查询:去重复、组合查询、连接查询、虚拟表
简书作者:seay 文章出处: 关系数据库SQL之高级数据查询:去重复.组合查询.连接查询.虚拟表 回顾:[知识库]-数据库_MySQL之基本数据查询:子查询.分组查询.模糊查询 Learn [已经过 ...
- ElasticSearch的高级复杂查询:非聚合查询和聚合查询
一.非聚合复杂查询(这儿展示了非聚合复杂查询的常用流程) 查询条件QueryBuilder的构建方法 1.1 精确查询(必须完全匹配上,相当于SQL语句中的“=”) ① 单个匹配 termQuery ...
随机推荐
- Word直接发布新浪博客(以Wo…
原文地址:Word直接发布新浪博客(以Word 2013为例)作者:paulke2011 注意:这篇博客直接由Word 2013发出!这虽然也算是一个教程,但更多的是一个试验品. 老早就知道Word有 ...
- KVM虚拟化主机安装
KVM虚拟化主机安装 最小化安装CentOS6.X或者CentOS7.X,RHEL6.X以上系列建议建议选择安装最小虚拟化主机 如果要安装桌面可以先选择最小化虚拟主机,再选择Gnome桌面包 安装过程 ...
- Java零碎知识点
█ 举个例子:Iterator iter = map.entrySet().iterator(); xx.yy() ,表示一个xx对象的yy方法 ,xx.yy().zz()中 xx.yy()返回 ...
- 201521123060 《Java程序设计》第4周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. 1.object是所有类的父类: 2.继承的作用:抽取共同特征,复用代码: 3.设计类的继承 ...
- Python[小甲鱼005Python的数据类型]
一.数值类型 整形 布尔类型 True 和 False 即1和0 浮点型 e记法 e ,例如 1.5e11 = 150000000000 ...
- 201521123052 《Java程序设计》 第14周学习总结
1. 本周学习总结 2. 书面作业 1. MySQL数据库基本操作 建立数据库,将自己的姓名.学号作为一条记录插入.(截图,需出现自己的学号.姓名) 在自己建立的数据库上执行常见SQL语句(截图) - ...
- **********MySql查询方法重要**********
分析问题要分步,查询每一步的结果,最后连起来 例如下面有四张表让你查询 查询选修“3-105”课程的成绩高于“109”号同学成绩的所有同学的记录. 第一部,找到课程编号为3-105的记录中学号为109 ...
- Linux系统文件与目录权限管理
Linux文件目录权限管理 一.Linux文件属性及权限 1.Linux文件及目录权限及属性说明 (1)权限及属性说明 (2)文件权限说明 三种权限说明:r 读 read w 写 write x ...
- Oracle存储过程 一个具体实例
表结构信息,并不是用oracle描述的,但是后面的存储过程是针对oracle的 ----------------个人交易流水表----------------------------------- c ...
- CSS3 box-sizing属性的应用
在一个文档中,每个元素都被表示为一个矩形的盒子.盒子模型具有4个属性['外边距(margin)','边框(border)','内边距(padding)','内容(content)']. 我们要设置某个 ...