1.什么是match查询?match查询可以做什么?

我们知道了term查询不可以进行分词查询的,那么如何进行分词查询呢?就可以使用match查询;
match查询属于高层查询他会根据你查询的不同字段类型,采用不同的查询方式;(比较智能化)

例如:

·查询的是日期或者是数值的话,他会将你基于的字符串查询内容转换为日期或者数值对待;(智能把字符串转化为数值)
·如果查询的内容是一个不能别分词的内容(keyword),match查询不会对你指定的关键词进行分词; (不该分词的内容不给你分)
·如果查询的内容是一个可以被分词的内容(text),match会将你指定的查询内容根据一定的方式去分词,去分词库中匹配指定的内容; (还可以自己指定分词方式)
match查询,实际底层就是多个term查询,将多个term查询结果给汇合在一起;(match查询就是多个term查询拼凑的)

声明:以上例子为嫖来的


2.如何使用match查询?

一、match_all 查询所有!!!就是查询类型(表)里面所有的值(整张表的内容);

#match查询
GET /book/novel/_search
{"query": {"match_all": {}}
}

含义:搜索过程:指明索引,类型,然后_search 代表是一个检索;query也代表检索;然后就是match_all 代表搜索所有

二、match 依据字段desc进行查询;

#match查询
GET /book/novel/_search
{"query": {"match": {"desc": "好书三"}}
}

含义:搜索过程:用match进行搜索”好书三” 然后他会给我们进行分词,首先他会先检查desc是不是一个可以进行分词的字段;这个在我们设置的时候进行text类型是可以进行分词的keyword类型是不会被分词的;然后desc是一个text类型的;然后他就会进行分词,分为”好书”+”三” ;然后他就会去数据库里匹配哪一条数据desc里的分词里有”好书”或者有”三”;只要有的(有一个就行)它都会给匹配出来
注意:如果库里的数据分词的时候没有**分出”三”**来,但是又”三个”他也不会匹配,他是看分词,不是看包含!!!
。。。。。。。。。。。。。

嘻哈的简写笔记

。。。。。。。。。。。。。

24.ES中什么是match查询?match查询可以做什么?如何使用match查询?嘻哈的简写笔记——Elastic Search相关推荐

  1. 29.什么是ES 的id查询?如何使用id查询?如何在java中进行ID查询?嘻哈的简写笔记——Elastic Search

    1.什么是ES 的id查询?如何使用id查询? Id查询就是根据一个id进行查询,非常简单: GET /book/novel/ + id GET /book/novel/2 含义:这是查询一个id为2 ...

  2. 6.ES中什么是索引(ES中的索引指的是库)的分片和备份(副本)?ES中的关键词有哪些? 嘻哈的简写笔记——Elastic Search

    1.ES中什么是索引(ES中的索引指的是库)的分片和备份(副本)? 分片是对索引的切分存储:备份是对分片的备份: ES的服务中,可以创建多个索引(ES中的索引指的是库):每一个索引默认被分成5片存储: ...

  3. 33.什么是wildcard(通配符)查询?如何进行通配符查询?如何使用java进行wildcard (通配符)查询?嘻哈的简写笔记——Elastic Search

    1.什么是wildcard(通配符)查询?如何进行通配符查询? wildcard查询也属于模糊查询: 通配查询,和MySql中的like是一个套路,可以在查询的时候,在字符串中指定通配符星号( * ) ...

  4. 22.什么是terms查询?terms查询和term查询的区别是什么?如何使用terms查询?嘻哈的简写笔记——Elastic Search

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

  5. ES中term、terms、match的区别

    ES中term.terms.match的区别 term query会去倒排索引中寻找确切的term,它并不知道分词器的存在,这种查询适合keyword.numeric.date等明确值的 term:查 ...

  6. es中match和term的区别

    GET my_test/children/_search {"query":{"match":{"other": "重点内容&qu ...

  7. ES中实现分页查询数据并返回想要的字段

    在日志收集系统中,最近需要通过httpclient获取es中的日志信息,所以学习了一些es的查询语句方面的用法: 分页 分页的本质 分页的本质是从"大的数据集"中取出一部分.比如1 ...

  8. ES中如何实现对查询结果的二次排序

    一.场景说明 比如我们在CSDN中根据输入的关键词搜索博客文章,需要先根据关键词的相似度匹配排序,然后根据博客热度进行二次排序,保证热度比较高的博客文章优先被搜索到,提高用户的搜索体验. 那么,如何在 ...

  9. ES中如何实现like模糊查询

    问题描述: 我们都知道ES针对复杂的多添加组合查询非常强大,也知道通过match可以实现全文检索查询(分词查询),但是如果现在我只需要实现类似mysql中的like全匹配模糊查询,该怎么实现呢? 业务 ...

最新文章

  1. jq修改iframe html代码,使用jQuery替换iframe的所有内容(包括doctype和html标签)
  2. Android扫描二维码 实现 登录网页
  3. CodeBlacks程序调试的那些事
  4. CentOS7安装Docker详细教程
  5. centos7中置空一个文件的内容
  6. 吉林高考成绩查询2021年几号公布,2021年吉林高考成绩查询时间及查分方式
  7. 利用有名管道实现进程间的通信
  8. android p dp5,谷歌释出Android P第5个开发者预览版更新!
  9. db2 dec函数oracle,DB2常用函数和Oracle的比较
  10. python跳出两层(多层)循环--使用标志量
  11. mysql 提示ssl问题
  12. 系统分析师论文通用格式
  13. AnkhSVN支持vs2012~2022
  14. 论文阅读 (54):DeepFool: A Simple and Accurate Method to Fool Deep Neural Networks
  15. ewebeditor漏洞大全
  16. 如何将LaTeX公式拷贝到Word中
  17. 微信企业号已停止提供企业消息会话服务器,企业微信注册时显示会话服务已经被安装了怎么解决 解决攻略教程大全...
  18. 【数据结构】树与树的表示、二叉树存储结构及其遍历、二叉搜索树、平衡二叉树、堆、哈夫曼树与哈夫曼编码、集合及其运算
  19. 在ArcGIS中勾绘全流域方法
  20. otherwise 用法

热门文章

  1. jsp中request.getAttribute()和 request.getParameter()有何区别
  2. java ireport 子报表_ireport教程之子报表的实现
  3. 成都盛铭轩:网店装修需掌握哪些技巧
  4. RPN架构及其PyTorch实现
  5. springboot + Gradle test时报错:No tests found for given includes:xxxx
  6. 10种极具创意的验证码设计
  7. 买iPhone 12省钱攻略,你可以这么操作!
  8. 因为近视,你可能报不了的大学专业有这么多!
  9. 计算机出现调试管理器,互联网资讯:电脑出现实时调试怎么回事电脑出现实时调试如何解决...
  10. 如何编写规范的ADT