给定一个查询和一个文档字段,将该查询的所有术语与该字段的所有术语匹配。
-
查询项是字段的
-
要求1)通过使用
and
匹配查询中的运算符。但我一直找不到办法。
highlight
并要求突出显示所有字符串(在我的应用程序逻辑中)
例子:
PUT bananas/banana/1
{ "name" : "banana"}
PUT bananas/banana/2
{ "name" : "ripe banana"}
PUT bananas/banana/3
{ "name" : "not so ripe banana"}
GET bananas/_search
{
"query" : {
"match": { "_all": { "query": "ripe banana", "operator": "and" } }
},
"highlight" : {
"fields" : { "*" : { } },
"require_field_match": false
}
}
# Result (hits only):
"hits" : {
"hits" : [
{
"_index" : "bananas",
"_type" : "banana",
"_id" : "3",
"_score" : 0.5753642,
"_source" : {
"name" : "not so ripe banana"
},
"highlight" : {
"name" : [
"not so <em>ripe</em> <em>banana</em>"
]
}
},
{
"_index" : "bananas",
"_type" : "banana",
"_id" : "2",
"_score" : 0.51623213,
"_source" : {
"name" : "ripe banana"
},
"highlight" : {
"name" : [
"<em>ripe</em> <em>banana</em>"
]
}
}
]
}
因此,在这种情况下,我想排除“不太成熟的香蕉”的结果(它甚至出于某种原因首先返回!)。
我的解决方法是检查
查看是否有未突出显示的内容的部分响应