elasticsearch中术语与匹配有什么不同

  介绍

本篇文章为大家展示了elasticsearch中术语与匹配有什么不同,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

<强> elasticsearch中术语与匹配区别

<李>

术语是精确查询

<李>

匹配是模糊查询

<强>词查询

术语是代表完全匹配,也就是精确查询,搜索前不会再对搜索词进行分词,所以我们的搜索词必须是文档分词集合中的一个,比如说我们要找标题为北京奥运的所有文档

curl 美元;-XGET  http://localhost: 9200/索引/doc/_search ? pretty  -d    & # 39;{   ,“query": {   “term"才能:{   ,,,“title":“北京奥运“;   ,,}   ,}   }& # 39;

将会得到如下结果

{   “took"才能:,1,   “timed_out"才能:,假的,   “_shards"才能:,{   ,,,“total":, 5,   ,,,“successful":, 5,   ,,,“failed": 0   ,,},   “hits"才能:,{   “total"才能:,1,   “max_score"才能:,0.92055845,   “hits"才能:,   ,,{   ,,,“_index":,“index"   ,,,“_type":,“doc"   ,,,“_id":,“3“,   ,,,“_score":, 0.92055845,   ,,,“_source":, {   ,,,,,“content":,“同一个世界同一个梦想,,   ,,,,,“title":,“北京奥运“,   ,,,,,“tags":,   ,,,,,,,,和平“;   ,,,,,)   ,,,}   ,,}   ,,)   ,}   }

<>强匹配类查询

匹配查询会先对搜索词进行分词,分词完毕后再逐个对分词结果进行匹配,因此相比于词的精确搜索,匹配是分词匹配搜索,匹配搜索还有两个相似功能的变种,一个是match_phrase,一个是multi_match,接下来详细介绍一下

<强>匹配

前面提到匹配搜索会先对搜索词进行分词,对于最基本的匹配搜索来说,只要搜索词的分词集合中的一个或多个存在于文档中即可,例如,当我们搜索中国杭州,搜索词会先分词为中国和杭州,只要文档中包含搜索和杭州任意一个词,都会被搜索到

curl 美元;-XGET  http://localhost: 9200/索引/doc/_search ? pretty  -d    & # 39;{   “query"才能:,{   ,,,“match":, {   ,,,,,“content":,“中国杭州“;   ,,,}   ,,}   }& # 39;

文档3正文中有杭州,文档2中有中国,因此搜索结果有两个,文档3中杭州出现两次,所以排在前面,结果如下:

{   ,“took":, 1,   ,“timed_out":,假的,   ,“_shards":, {   “才能total",:, 5,   “才能successful",:, 5,   ,,“failed": 0   },   ,“hits":, {   ,才能“total",,, 2,   ,才能“max_score",:, 0.99999994,   ,才能“hits",:,“, {   ,,,,,“_index",:,“index",   ,,,,,“_type",:,“doc",   ,,,,,“_id",:,“4“,   ,,,,,“_score",:, 0.99999994,   ,,,,,“_source",:, {   ,,,,,,,,“content",:,“杭州是一个美丽的城市,欢迎来到杭州“,   ,,,,,,,“title",:,“宣传“,   ,,,,,,,“tags",:,“,“旅游“,,“城市“,)   ,,,,,}   ,,,},{   ,,,,,“_index",:,“index",   ,,,,,“_type",:,“doc",   ,,,,,“_id",:,“2”,   ,,,,,“_score",:, 0.8838835,   ,,,,,“_source",:, {   ,,,,,,,,“content",:,“,中国是世界上人口最多的国家“,   ,,,,,,,,“title",:,“,中国“,   ,,,,,,,,“tags",:,“,“中国“,,“人口“,)   ,,,,,}   ,,,},)   ,,}   }

上述内容就是elasticsearch中术语与匹配有什么不同,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

elasticsearch中术语与匹配有什么不同