我有一个ElasticSearch查询,显示格式不正确,只是不确定我在做什么错(毫无疑问,很明显!)

查询如下所示:

{ "query":
{ "filtered":
    { "query":
        { "field":
            { "product":"prodA or prodB"
            }
        },
        "filter":
            {
                "userid":"username"
            }
    }
},
"size":10, "from":0
}

如果我省略了过滤器部分,则查询工作正常,因此,这一定与我使用过滤器选项的方式有关。
{ "query":
{ "filtered":
    { "query":
        { "field":
            { "product":"prodA or prodB"
            }
        }

    }
},
"size":10, "from":0
}

我如何格式化该查询才能使其正常工作?

最佳答案

您需要指定要使用的过滤器类型,就像选择查询过滤器时对查询所做的一样。 Term filter

{
    "query": {
        "filtered": {
            "query": {
                "field":{
                    "product":"prodA or prodB"
                }
            },
            "filter": {
                "term" : {
                    "userid":"username"
                }
            }
        }
    },
    "size":10,
    "from":0
}

关于elasticsearch - 在ElasticSearch中过滤结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14951434/

10-12 17:20
查看更多