话不多说,开整

term(完全匹配)

{"query": {"bool": {"must": [{"term": { #term 可以匹配任意数据"harmLevel": "3"}}],"must_not": [ ],"should": [ ]}},"from": 0,"size": 10,"sort": [ ],"aggs": { }}

range(范围查询)

{"query": {"bool": {"must": [{"range": { #一般用于时间与数值类型的范围查找"harmLevel": {"gt": "1", #gt代表大于 #gte代表大于等于"lt": "2" #lte代表小于 #lte代表小于等于}}}],"must_not": [ ],"should": [ ]}},"from": 0,"size": 10,"sort": [ ],"aggs": { }
}

fuzzy(误拼写查询)

{"query": {"bool": {"must": [{"fuzzy": {"sourcePort": {  #字段名称"value": "505",   #字段内容 "max_expansions": 1  #最大误拼写检查}}}]}}
}
#说明:以上例子是es允许在value内容中出现差别,例如输入505,然后查询,504的也会被查询到,105的也会被查询到,总之是只要是一位内容差别的都会查询出来,这里是因为max_expansions这个参数做了限制,最大就允许你输错一位,当然也是可以调整。另外还有一个最小误拼写检查参数min_similarity

wildcard(模糊查询)

GET website/_search
{"query": {"bool": {"must": [{"wildcard": {         #模糊查询关键字"title": "*first*"    # 只要句子中含有first内容都显示}}],"must_not": [ ],"should": [ ]}},"from": 0,"size": 10,"sort": [ ],"aggs": { }
}

exists(排除null)

{"query": {"bool": {"must": [{"exists": {  #关键字"field": "title"  #要排除那个字段}}],"should": [{"match_all": { }}]}},"from": 0,"size": 10,"sort": [ ],"aggs": { }}
凡是title字段为null的数据将不会展示,但是title字段为""(空字符串)依旧显示,如果要实现空字符串排除,可以配合must_not使用

match(分词查询)

GET website/_search
{"query": {"bool": {"must": [{"match": { "title": "这是"}}]}},"from": 0,"size": 10,"sort": [ ],"aggs": { }
}
结果 :"hits" : {"total" : {"value" : 1,"relation" : "eq"},"max_score" : 1.2814486,"hits" : [{"_index" : "website","_type" : "_doc","_id" : "2","_score" : 1.2814486,"_source" : {"title" : "这是一个标题","text" : "哈哈一个文本"}}]}这个match只会对text字段生效,与模糊查询有区别,例如我们输入的是"这是",用了match关键字会帮我们拆成“这”跟“是”,然后因为text类型的数据,数据本身是分词的,例如“这是一个标题”,可能会被分词成“这”,“是”,“一个”,“标题”所以它们会按照分词完毕之后的内容进行匹配。故会匹配除这是一个标题这段内容。

match_phrase(短语匹配)

GET website/_search
{"query": {"bool": {"must": [{"match_phrase": {"title": "标题啊"}}]}}
}这个match_phrase 采用的是短语匹配,也就是说把传入的内容当成是 一个句子,去匹配内容,只有当有匹配的字段中有满足这个句子的时候才会返回匹配内容

那这个match_phrase与match有什么区别的

match查找GET website/_search
{"query": {"bool": {"must": [{"match": {"title": "标题啊"}}]}},"from": 0,"size": 10,"sort": [ ],"aggs": { }
}
结果 :"hits" : {"total" : {"value" : 1,"relation" : "eq"},"max_score" : 1.2814486,"hits" : [{"_index" : "website","_type" : "_doc","_id" : "2","_score" : 1.2814486,"_source" : {"title" : "这是一个标题","text" : "哈哈一个文本"}}]}match_phrase 查找
GET website/_search
{"query": {"bool": {"must": [{"match_phrase": {"title": "标题啊"}}]}}
}
结果 :"hits" : {"total" : {"value" : 0,"relation" : "eq"},"max_score" : null,"hits" : [ ]}由此可见,match是分词匹配(也就是说将输入的词进行分词),但match_phrase是短语匹配(将整个输入文本进行查找)

以上就是经常用到的关键字了,基本上可以满足简单的查找功能

Elasticsearch基本查询关键字介绍相关推荐

  1. 10.Elasticsearch查询关键字1

    本文讲解几个查询时常用的关键字: match_all 查询 match 查询 multi_match 查询 range 查询 term 查询 terms 查询 exists 查询和 missing 查 ...

  2. elasticsearch系列五:搜索详解(查询建议介绍、Suggester 介绍)

    一.查询建议介绍 1. 查询建议是什么? 查询建议,为用户提供良好的使用体验.主要包括: 拼写检查: 自动建议查询词(自动补全) 拼写检查如图: 自动建议查询词(自动补全): 2. ES中查询建议的A ...

  3. Elasticsearch查询参数介绍

    因为项目需要调用api查询elasticsearch拿数据,这边记录一下项目中常用的一些查询参数 es的查询接口为: GET /索引名/_search python调用data为需要传入的参数impo ...

  4. Elasticsearch聚合查询案例分享

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

  5. elasticsearch5.x:查询建议介绍、Suggester 介绍以及Java-api实现

    elasticsearch5.x:查询建议介绍.Suggester 介绍 参考:http://www.cnblogs.com/leeSmall/p/9206646.html 参考(重点):https: ...

  6. VBA各种查询方法介绍和应用举例

    目录 前言 1 Range对象的Find方法 2. Range 对象的 Filter 方法 2.1 AutoFilte自动筛选 2.2 AdvancedFilter 高级筛选 3.Instr 函数 4 ...

  7. Elasticsearch: Cerebro 用户界面介绍

    介绍 Cerebro是以前的Elasticsearch插件Elasticsearch Kopf的演变(https://github.com/lmenezes/elasticsearch- kopf)– ...

  8. ElasticSearch 高级查询语法

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

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

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

最新文章

  1. idea直连linux部署项目,idea项目打包和在linux的部署
  2. 独家 | 简单三步实现Python脚本超参数调优(附代码)
  3. VBA【遍历每个工作表并将工作表表名赋予B2单元格】
  4. Zabbix2.4安装和问题总结(一)
  5. libcusolver.so.8.0: cannot open shared object file: No such file or director
  6. wordpress-4.4.1 数据库表结构详解
  7. 王爽汇编语言C硬盘读写,王爽汇编语言学习笔记(范文).doc
  8. 【STC15库函数上手笔记】5、定时器
  9. 哈弗f7带自动泊车吗_中国品牌的全球车型再升级——试驾2020款哈弗F7
  10. 恕我直言,你们的模型训练都还不够快
  11. 推荐 7 个优质技术号
  12. MYSQL 数据库配置优化
  13. iOS备忘录之IOS开发的一些网站(看看还是不错的)
  14. hd530黑苹果硬解_黑苹果案例之—笔记本核显HD515_520_530_540_550
  15. 【转】布同:如何循序渐进学习Python语言
  16. 最新智商测试html5,2017年最新智商测试题
  17. Homebridge插件编写-基于homebridge-aqara
  18. Python获取多核CPU温度 均值
  19. 用标准遗传算法求函数最大值
  20. 如何看待阿里云要做“全球产业AI的拓荒者”?

热门文章

  1. 无法加载播放器,请删除浏览器缓存后重试
  2. 中望CAD的引线标注格式怎么改_国产操作系统生态有新进展!中望携手统信推出UOS版本CAD...
  3. 主流操作系统及其优缺点
  4. 2022-2027年中国摄像头市场规模现状及投资规划建议报告
  5. Redis系列6-sentinel
  6. Redis系列8-cluster(2)
  7. 永久WordPress管理员声明:第3部分
  8. web接入微博第三方登录
  9. 使用TI PDK example的步骤
  10. 服务器系统剪辑视频,天影视通 影视后期剪辑工作站 EDIUS剪辑主机 视频编辑制作服务器...