美文网首页Elasticsearch 7.x 小白到高手
elasticsearch 7.0 新特性之 Match Bo

elasticsearch 7.0 新特性之 Match Bo

作者: 郭彦超 | 来源:发表于2019-04-18 07:27 被阅读23次

    之前有提到es7通过新增 search_as_you_type 数据类型帮组用户友好的实现了搜索即可见的应用场景,那么具体它的查询语法是什么,且看本文内容

    1、介绍

    match_bool_prefix 查询内部将输入文本通过指定analyzer分词器处理为多个term,然后基于这些个term进行bool query,除了最后一个term使用前缀查询 其它都是term query。
    查询语句:

    GET /_search
    {
        "query": {
            "match_bool_prefix" : {
                "message" : "quick brown f"
            }
        }
    }
    

    类似于:

    GET /_search
    {
        "query": {
            "bool" : {
                "should": [
                    { "term": { "message": "quick" }},
                    { "term": { "message": "brown" }},
                    { "prefix": { "message": "f"}}
                ]
            }
        }
    }
    

    和 match_phrase_prefix query重要的不同点是,match_phrase_prefix query前缀匹配是以短语为最小粒度进行的,而 match_bool_prefix 如果不对相关度进行限制的话,它会匹配更多的内容。

    2、操作

    • 参数
    参数 说明
    analyzer 指定terms文本分词器,默认是用mapping阶段指定的分词器
    minimum_should_match 指定匹配度,可以是[0,1]的小数,也可以是百分比
    operator 指定多个term之间的匹配方式,and或者or

    相关文章

      网友评论

        本文标题:elasticsearch 7.0 新特性之 Match Bo

        本文链接:https://www.haomeiwen.com/subject/wasgwqtx.html