elasticsearch 根据权重提升搜索结果,elasticsearch,kibana,elasticsearch,Kibana" /> elasticsearch 根据权重提升搜索结果,elasticsearch,kibana,elasticsearch,Kibana" />

elasticsearch 根据权重提升搜索结果

elasticsearch 根据权重提升搜索结果,elasticsearch,kibana,elasticsearch,Kibana,我是elasticsearch的新手,所以我很难弄明白这一点 所以问题是我试图搜索有标签的内容,这些标签会有权重,就像 { tag: "tag name", weight: 1 } 现在我正在尝试这个查询 { "query": { "bool": { "should": [ { "multi_match": { "query": "do", "fields": [

我是elasticsearch的新手,所以我很难弄明白这一点

所以问题是我试图搜索有标签的内容,这些标签会有权重,就像

{
  tag: "tag name",
  weight: 1
}
现在我正在尝试这个查询

{
  "query": {
    "bool": {
      "should": [
        {
          "multi_match": {
            "query": "do",
            "fields": [
              "name",
              "tags.tag"
            ],
            "type": "phrase_prefix"
          }
        }
      ]
    }
  }
}
但是我不知道如何修改搜索,使得搜索结果优先于标签权重


谢谢。

不确定我是否正确理解了你的问题。。。你想得到标签的权重并用它影响搜索结果分数吗?如果是,请看一看。根据文档,您可以执行以下操作:

{
  "query": {
    "function_score": {
      "query": {
        "match": { "message": "elasticsearch" }
      },
      "script_score" : {
        "script" : {
          "source": "Math.log(2 + doc['likes'].value)"
        }
      }
    }
  }
}