Intervals query
根据匹配项的顺序和邻近程度返回文档。
interval查询使用从一组小定义构建的匹配规则。然后将这些规则应用于来自指定字段的术语。
这些定义产生最小间隔的序列,这些序列跨越文本正文中的术语。这些间隔可以由父源进一步组合和过滤。
Example request
下面的区间搜索返回包含我最喜欢的食物,紧接着,是热水或冷饭,在my_text字段中。
POST _search
{
"query": {
"intervals" : {
"my_text" : {
"all_of" : {
"ordered" : true,
"intervals" : [
{
"match" : {
"query" : "my favorite food",
"max_gaps" : 0,
"ordered" : true
}
},
{
"any_of" : {
"intervals" : [
{ "match" : { "query" : "hot water" } },
{ "match" : { "query" : "cold porridge" } }
]
}
}
]
}
}
}
}
}
这条检索语句将要匹配的是再my_text字段中的my favorite food is cold porridge而不是when it's cold my favorite food is porridge
.