Elasticsearch 数据搜索与过滤全解析
1. 特殊查询类型
在 Elasticsearch 中,有几种特殊的查询类型可以帮助我们更灵活地搜索数据。
1.1 恒定分数查询(constant_score query)
恒定分数查询会包装另一个查询(或过滤器),并为包装查询(或过滤器)返回的每个文档返回一个恒定分数。这使我们能够严格控制查询或过滤器匹配的文档的分数值。例如,如果我们希望标题字段中包含 “crime” 一词的所有文档的分数为 2.0,可以向 Elasticsearch 发送以下查询:
{
"query" : {
"constant_score" : {
"query" : {
"term" : {
"title" : "crime"
}
},
"boost" : 2.0
}
}
}
1.2 索引查询(indices query)
索引查询在对多个索引执行查询时非常有用。它允许我们提供一个索引数组( indices 属性)和两个查询,一个是在查询列表中的索引时执行的查询( query 属性),另一个是在所有其他索引上执行的查询( no_match_query 属性)。例如,假设我们有一个别名 “books”,包含两个索引 “library” 和 “users”,并且我们想使用这个别名,但希望在这些索引上运行不同的查询,可以发
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



