嗨,我需要基于字段的一个特定值来提升文档。我的文档包含一个名为“区域”的字段。根据这个地区的价值,我需要增加我的文档。这些是我的文件
{
"title":"INOX: Malleshwaram - Mantri Square",
"region":"Bangalore"
}
{
"title":"INOX: Bund Garden Road",
"region":"Pune"
}
{
"title":"INOX: Glomax Mall, Kharghar",
"region":"Mumbai"
}我尝试在我的查询中使用rescore查询,如下所示
"rescore" : {
"query" : {
"score_mode":"total",
"query_weight" : 2.5,
"rescore_query_weight" : 0.5,
"rescore_query" : {
"match" : {
"region" : {
"query" : "mumbai",
"slop" : 2
}
}
}
}
}
} 但是,作为required..Is,它不能正常工作,有办法解决这个问题吗?提前感谢!
发布于 2014-04-14 11:59:50
为什么再取,你所需要的只是增加。根据所使用的查询类型,可以在
"query_string": {
"fields":["region^56"],
"use_dis_max" : true,
"query": "mumbai"
}其中^56是升压值。
您还可以使用这里提到的http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-boosting-query.html
如果您使用bool查询,您可以像这样使用boost来提升所有查询。
{
"bool" : {
"must" : {
"term" : { "region" : "mumbai" }
},
"boost" : 25.0
}}
https://stackoverflow.com/questions/23053732
复制相似问题