dis_max 查询包含以下关键元素:

queries: 这是一个查询数组,其中包含两个 match 查询。

第一个 match 查询要求匹配 "title" 字段中包含 "Quick pets" 的文档。

第二个 match 查询要求匹配 "body" 字段中包含 "Quick pets" 的文档。

tie_breaker: 这个参数定义了非主要条件对结果得分的影响程度。在这里设置为 0.2,表示非主要条件的得分对最终得分的贡献比例为 20%。

换句话说,这个查询的意义是:

在 "title" 字段和 "body" 字段中寻找包含 "Quick pets" 的文档。

使用 disjunction-max 操作来计算最终得分,选择具有最高相关性得分的文档,并在此基础上应用 tie breaker 来考虑第二个查询条件的影响。

如果某个文档同时匹配了两个查询条件,其得分将会考虑到两个条件的相关性得分,其中第二个条件的得分将以较低的权重(由 tie breaker 控制)纳入最终得分的计算中。


PUT /blogs/_doc/1
{
    "title": "Quick brown rabbits",
    "body":  "Brown rabbits are commonly seen."
}

PUT /blogs/_doc/2
{
    "title": "Keeping pets healthy",
    "body":  "My quick brown fox eats rabbits on a regular basis."
}

POST /blogs/_search
{
    "query": {
        "bool": {
            "should": [
                { "match": { "title": "Brown fox" }},
                { "match": { "body":  "Brown fox" }}
            ]
        }
    }
}

POST blogs/_search
{
    "query": {
        "dis_max": {
            "queries": [
                { "match": { "title": "Quick pets" }},
                { "match": { "body":  "Quick pets" }}
            ]
        }
    }
}

# dis_max 查询包含以下关键元素:
# queries: 这是一个查询数组,其中包含两个 match 查询。
# 第一个 match 查询要求匹配 "title" 字段中包含 "Quick pets" 的文档。
# 第二个 match 查询要求匹配 "body" 字段中包含 "Quick pets" 的文档。
# tie_breaker: 这个参数定义了非主要条件对结果得分的影响程度。在这里设置为 0.2,表示非主要条件的得分对最终得分的贡献比例为 20%。
# 换句话说,这个查询的意义是:
# 在 "title" 字段和 "body" 字段中寻找包含 "Quick pets" 的文档。
# 使用 disjunction-max 操作来计算最终得分,选择具有最高相关性得分的文档,并在此基础上应用 tie breaker 来考虑第二个查询条件的影响。
# 如果某个文档同时匹配了两个查询条件,其得分将会考虑到两个条件的相关性得分,其中第二个条件的得分将以较低的权重(由 tie breaker 控制)纳入最终得分的计算中。
POST blogs/_search
{
    "query": {
        "dis_max": {
            "queries": [
                { "match": { "title": "Quick pets" }},
                { "match": { "body":  "Quick pets" }}
            ],
            "tie_breaker": 0.2
        }
    }
}

一次全文搜索的实例

POST tmdb/_search
{
"_source": ["title","overview"],
 "query": {
   "match_all": {}
 }
}

POST tmdb/_search
{
  "_source": ["title","overview"],
  "query": {
    "multi_match": {
      "query": "basketball with cartoon aliens",
      "fields": ["title","overview"]
    }
  },
  "highlight" : {
        "fields" : {
            "overview" : { "pre_tags" : ["\\033[0;32;40m"], "post_tags" : ["\\033[0m"] },
            "title" : { "pre_tags" : ["\\033[0;32;40m"], "post_tags" : ["\\033[0m"] }

        }
    }
}

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部