ElasticSearch6.x 之全文查询

哈哈 阅读:679 2021-03-31 17:18:32 评论:0

第一个:ElasticSearch6.x 中match 和term 之间的区别

match: 模糊匹配查询

term: 精确查询

示列:

全文检索定义说明:全文检索通常用于在全文本字段(如电子邮件正文)上运行全文检索,且分词查询的词组。

全文检索之match检索 (默认or 操作符)

POST  http://192.168.1.74:9200/website/blog/_search/ 
{ 
 "query": { 
    "match": { 
       "title": { 
             "query":"Spring-Security" 
          } 
     } 
  } 
}

全文检索之match检索 (and 操作符)

{ 
 "query": { 
    "match": { 
       "title": { 
             "query":"Spring-Security", 
             "operator":"and" 
          } 
     } 
  } 
}

全文检索之match_phrase检索(短语检索)

与match query类似,但用于匹配精确短语,可称为短语查询

match_phrase查询会将查询内容分词,分词器可以自定义,文档中同时满足以下两个条件才会被检索到:

  1. 分词后所有词项都要出现在该字段中
  2. 字段中的词项顺序要一致

POST  http://192.168.1.74:9200/website/blog/_search/ 
{ 
 "query": { 
     "match_phrase": { 
      "title": "Spring-Security" 
    } 
  } 
}

全文检索之match_phrase_prefix检索(前缀查询)

match_phrase_prefix与match_phrase相同,对match_phrase进行了扩展,查询内容的最后一个分词与只要满足前缀匹配即可。

POST  http://192.168.1.74:9200/website/blog/_search/ 
{ 
 "query": { 
     "match_phrase_prefix": { 
      "title": "Spring-Security" 
    } 
  } 
}

 

全文检索之multi_match检索

multi_match查询是match查询的升级版,用于多字段检索。

POST  http://192.168.1.74:9200/website/blog/_search/ 
{ 
 "query": { 
     "multi_match": { 
      "query": "ElasticSearch6.x", 
      "fields": ["title","abstract"] 
    } 
  } 
}

 

声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号