目录

一.term&terms查询

1.term查询

使用:kibana工具

代码实现方式

2.terms查询

使用:kibana工具

代码实现方式

需要数据的可以私我哦!


一.term&terms查询

1.term查询

term的查询是代表完全匹配,搜索之前不会对你搜索的关键字进行分词,对你的关键字去文档分词库中去匹配内容。

# term查询
POST /sms-logs-index/sms-logs-type/_search
{"from": 0,     # limit ?"size": 5,    # limit x,?"query": {"term": {"province": {"value": "北京"}}}
}

使用:kibana工具

代码实现方式

/*** @author: qiuyongqi* @time: 15:50 2021/6/7* @description: 创建测试类,连接ES*/
public class EsClient {public static RestHighLevelClient getClient(){// 创建HttpHost对象HttpHost httpHost = new HttpHost("192.168.247.128",9200);// 创建RestClientBuilderRestClientBuilder clientBuilder = RestClient.builder(httpHost);// 创建RestHighLevelClientRestHighLevelClient client = new RestHighLevelClient(clientBuilder);// 返回return client;}
}
public class demo4 {//定义RestHighLevelClient对象RestHighLevelClient client = EsClient.getClient();//创建objectMaper对象ObjectMapper objectMapper = new ObjectMapper();//定义索引名称String index = "sms-logs-index";//定义类型名称String type = "sms-logs-type";@Testpublic void searchTerm() throws IOException {//1. 创建Request对象SearchRequest request = new SearchRequest(index);request.types(type);//2. 指定查询条件SearchSourceBuilder builder = new SearchSourceBuilder();builder.query(QueryBuilders.termQuery("province", "北京"));request.source(builder);//3. 执行查询SearchResponse response = client.search(request, RequestOptions.DEFAULT);//4. 获取到_source中的数据,并展示for (SearchHit hit : response.getHits().getHits()) {System.out.println(hit.getSourceAsMap());}}}

2.terms查询

terms和term的查询机制是一样,都不会将指定的查询关键字进行分词,直接去分词库中匹配,找到相应文档内容。

terms是在针对一个字段包含多个值的时候使用。

  • term:where province = 北京;
  • terms:where province = 北京 or province = ?or province = ?
# terms查询
POST /sms-logs-index/sms-logs-type/_search
{"query": {"terms": {"province": ["北京","山西","武汉"]}}
}

使用:kibana工具

代码实现方式

@Testpublic void searchTerms() throws IOException {//1. 创建requestSearchRequest request=new SearchRequest(index);request.types(type);//2. 封装查询条件SearchSourceBuilder builder=new SearchSourceBuilder();builder.query(QueryBuilders.termsQuery("province","北京","上海"));request.source(builder);//3. 执行查询SearchResponse response = client.search(request, RequestOptions.DEFAULT);//4. 输出_sourcefor (SearchHit hit : response.getHits().getHits()) {Map<String, Object> sourceAsMap = hit.getSourceAsMap();System.out.println(sourceAsMap);}}

需要数据的可以私我哦!

ElasticSearch-termterms查询相关推荐

  1. elasticsearch 分页查询实现方案——Top K+归并排序

    elasticsearch 分页查询实现方案 1. from+size 实现分页 from表示从第几行开始,size表示查询多少条文档.from默认为0,size默认为10, 注意:size的大小不能 ...

  2. Elasticsearch聚合查询案例分享

    为什么80%的码农都做不了架构师?>>>    Elasticsearch聚合查询案例分享 1.案例介绍 本文包含三个案例: 案例1:统计特定时间范围内每个应用的总访问量.访问成功数 ...

  3. elasticsearch高亮显示查询结果

    elasticsearch高亮显示查询结果 //高亮显示查询结果 @Test public void demo9() throws Exception{//创建连接搜索服务器的对象Client cli ...

  4. ElasticSearch各种查询对象Query的使用

    ElasticSearch各种查询对象Query的使用 ElasticSearch提供QueryBuilders.queryStringQuery(要搜索的内容)查询方法,对所有字段进行分词查询. 分 ...

  5. 【ElasticSearch】ElasticSearch 嵌套查询:如何搜索嵌入的文档

    1.概述 翻译:https://www.bmc.com/blogs/elasticsearch-nested-searches-embedded-documents/ ElasticSearch 有时 ...

  6. ElasticSearch 高级查询语法

    ElasticSearch 高级查询语法Query DSL ES倒排索引 ES高级查询Query DSL 查询所有 match_all 分页查询form 深分页查询Scroll 指定字段排序sort ...

  7. elasticsearch的查询器query与过滤器filter的区别

    很多刚学elasticsearch的人对于查询方面很是苦恼,说实话es的查询语法真心不简单-  当然你如果入门之后,会发现elasticsearch的rest api设计是多么有意思. 说正题,ela ...

  8. php聚合查询,php elasticsearch 聚合查询(Aggregation)

    Elasticsearch中的聚合查询,类似SQL的SUM/AVG/COUNT/GROUP BY分组查询,主要用于统计分析场景. 这里主要介绍PHP Elasticsearch 聚合查询的写法,如果不 ...

  9. Elasticsearch的查询

    本文介绍使用Elasticsearch进行查询的语句和代码. 查询界面如下: 知识点: must 文档必须匹配 must 选项下的查询条件,相当于逻辑运算的 AND,且参与文档相关度的评分. shou ...

  10. ElasticSearch 组合查询(must not_must should filter)

    ElasticSearch 组合查询(must not_must should filter) ElasticSearch Demo: package org.ssgroup;import java. ...

最新文章

  1. python图形设置_python学习笔记——基本图形绘制
  2. Jmeter录制app脚本
  3. (单例设计模式中)懒汉式与饿汉式在多线程中的不同
  4. java零碎要点013---JAVA执行js_java执行JavaScript_java执行js引擎不能识别document浏览器内置对象解决办法
  5. ue设置MySQL_MySQL的安装与配置——详细教程 - Winton-Q
  6. python实现topsis法
  7. 多表查询分组排序-数据库习题
  8. bzoj 2827 千山鸟飞绝(treap)
  9. 常见硬件通信协议介绍
  10. 适合在企业网站展示企业发展历程的时间轴滑动特效源码
  11. luogu1042 乒乓球(NOIP2003普及组第1题)
  12. 宝塔界面为什么无法访问_宝塔面板登陆不上?宝塔面板打不开解决办法
  13. java腾讯滤镜接口_文档中心
  14. 纪·哈·纪伯伦 《孩子》
  15. 微信小程序订阅消息失败
  16. 超干货丨你想了解的短视频私域流量玩法都在这
  17. AToken每日简讯 1.11 星期五
  18. Python+Potato API实现关键字聊天机器人
  19. 传智杯C语言题库,[传智杯]补刀-题解(C语言代码)
  20. 我的世界服务器展示自定义图片,我的世界装逼小技巧 怎么在自制地图中显示自己的头像...

热门文章

  1. 自治医科大学和CureApp, Inc.:首个Digital Therapeutics治疗高血压的3期临床试验在日本启动
  2. [汇编语言]CALL和RET指令
  3. Cesium 实战 - AGI_articulations 扩展:模型自定义关节动作
  4. SourceInsight4.0.0124中文版-黑色背景主题
  5. Struts2(十)标签
  6. r语言进行go富集分析_GO富集分析可视化:R语言GOplot包——准备自己的数据
  7. 「数据库教程」MySQL删除数据库
  8. matlab画椭圆抛物面参数方程,椭圆抛物面 - calculus的日志 - 网易博客
  9. C++使用技巧(五):C类public,protected和 private的用法
  10. 虚拟机VMware和kali的简易安装-2022最新