ElasticSearch-dsl区间查询

问题描述 投票:0回答:3

我正在使用 this 库进行弹性搜索查询。它说它支持

intervals
查询,但我找不到可以帮助我进行查询的好例子。

我的查询如下:

GET index/_search
{
  "from": 0,
  "query": {
    "bool": {
      "must": [
        {
          "intervals": {
            "search_field": {
              "all_of": {
                "intervals": [
                  {
                    "match": {
                      "query": "search_term",
                      "max_gaps": 1
                    }
                  }
                ]
              }
            }
          }
        }
      ]
    }
  },
  "size": 50
}


我正在尝试使 dsl 查询像这样

Q(
   "bool",
    must=[
          Q("intervals", search_field=search_term, max_gaps=1)
    ]
 )

can someone guide me how to make the proper query or share an example. Thanks
python elasticsearch elasticsearch-dsl
3个回答
0
投票

可以尝试这样的事情:

s = s.query(
    Q('bool', must=[
        Q('intervals', search_field={
            'all_of': {
                'intervals': [
                    Q('match', query='search_term', max_gaps=1)
                ]
            }
        })
    ])
)

0
投票

经过多次尝试,终于可以用了 @Adelina 感谢您让我走向正确的方向!


s = s.query(
    Q('bool', must=[
        Q('intervals', search_field={
            'all_of': {
                'intervals': [
                    {'match': {'query': 'search_term', 'max_gaps': =1}}
                ]
            }
        })
    ])
)



0
投票
m => m.Intervals(c => c
.Field(new Field(fieldName, null, null))
.Match(ma => ma
.Query(queryValue)
.MaxGaps(0)
.Ordered(true)
                                                    
)
)

我正在使用间隔根据传入查询值参数的字段名和字段值来过滤记录,我在这方面面临一个问题,我没有找到任何解决方案来传递每个字段具有不同查询值的多个字段。 在此 Intervals 函数中,如何传递具有不同值的多个字段,作为具有值的字段的集合。

请给我任何解决方案

© www.soinside.com 2019 - 2024. All rights reserved.