多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] # bool查询 * must,should,must_not * minimum_should_match:表示一个文档至少匹配多少个短语才算是匹配成功,一般是在should里面 * disable_coord: 启用和禁用一个文档所包含所有查询关键词的分数得分计算,默认是false 无Coordination效果 含有apple的文档->分值: 1.5 含有apple jobs的文档->分值:3.0 含有apple jobs mobile的文档->分值4.5 有Coordination效果 含有apple的文档->分值: `1.5*1/3=0.5` 含有apple jobs的文档->分值: `3.0*2/3=2.0` 含有apple jobs mobile的文档->分值: `4.5*3/3=4.5` # boosting查询 positive部分: 查询返回的查询结果分值不变 negative部分: 查询的结果分值会被降低 negative_boost部分: 设置negative中要降低的分值 优点: 里面的两个查询都会有结果返回,其中一个分值就是你设置的分值 注意:如果是设有bool的must_not的话,那降低的那部分就没有结果返回 ![](https://img.kancloud.cn/75/27/7527749e9bbecc03a54c3eba25e8f203_415x385.png) 比如我们要查询apple公司但是不想搜寻到水果,我们就通过boosting把apple查询到的放前面,把水果相关的放后面 negative_boost降低的0.5会分给negative部分 # constant_score查询 优点:可以让一个查询得到一个恒定的分值 比如这个查询会有不同的分值 ~~~ GET /library/books/_search { "query": { "term": { "title": "elasticsearch" } } } ~~~ 但是这个查询分值恒定在1 ~~~ GET /library/books/_search { "query": { "constant_score": { "query": { "term": { "title": "elasticsearch" } } } } } ~~~ # indices查询 可以在多个索引上进行查询 not_match_query查询其他索引里面的数据