1.bool查询
must,should,must_not这几个参看博主另一篇博文有讲解:
minimum_should_match:表示一个文档至少匹配多少个短语才算是匹配成功
disable_coord:启用和禁用一个文档中所包含所有关键词分数得分计算,默认是false
如果disable_coord为false,表示无Coordination效果
含有apple的文档 ->分值:1.5
含有apple jobs 的文档 ->分值:3.0
含有apple jobs mobile的文档 -> 分值:4.5
如果disable_coord为true,表示有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
2.boosting查询
positive部分:查询返回的查询结果分值不变
negative部分:查询的结果分值会被降低
negative_boost部分:设置negative中要降低的分值
boosting查询的优点
优点:里面的两个查询都会有结果返回,其中一个分值就是你设置的分值
注意:如果是设有bool的must_not的话,那降低的那部分就没有结果返回
示例:
3.constant_score查询
优点:可以让一个查询得到一个恒定的分值
示例:
得到的结果是恒定的分值:
‘’
4.indices查询
优点:可以在多个索引上进行查询。
只有一个参数:no_match_query,查询其他索引里的数据
示例: