Elasticsearch Intervals query 间隔查询

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.

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值