【问题标题】:Elasticsearch: [filtered] query does not support [highlight]Elasticsearch:[过滤]查询不支持[突出显示]
【发布时间】:2016-11-12 01:48:44
【问题描述】:

我是 Elasticsearch 的新手。我有一个过滤查询如下

{
    "query": {
        "filtered" : {
            "query" : {
                "term" : {
                    "title" : "crime"
                }
            },
            "highlight" : {
                "fields" : {
                    "title" : {}
                }
            },
            "filter" : {
                "term" : { "year" : 1961 }
            }
        }
    }
}

当我尝试这个查询并得到错误时:

[filtered] query does not support [highlight]

过滤后的查询是否支持高亮显示?如果没有,如何使用过滤器在查询中实现高亮?我必须使用过滤器。

感谢和问候!

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    "highlight" 参数应与"query" 参数处于同一级别,而不是嵌入其中。在您的情况下,它应该看起来像这样:

    {
        "query": {
            "filtered" : {
                "query" : {
                    "term" : {
                        "title" : "crime"
                    }
                },
                "filter" : {
                    "term" : { "year" : 1961 }
                }
            }
        },
        "highlight" : {
            "fields" : {
                "title" : {}
            }
        }
    }
    

    【讨论】:

    • 酷!是否可以突出显示过滤器/术语中提到的字段或查询/术语中的字段?例如,如果标题和年份在查询中交换位置,则突出显示标题?
    猜你喜欢
    • 2016-05-02
    • 2016-09-11
    • 2016-10-11
    • 1970-01-01
    • 1970-01-01
    • 2016-03-25
    • 2020-07-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多