代码之家  ›  专栏  ›  技术社区  ›  omnes_flumina

Elasticsearch[size]查询格式错误,查询名称后没有start_object

  •  0
  • omnes_flumina  · 技术社区  · 1 年前

    我在Postman中使用了一个查询。它是:

    { "size": 1, "sort": { "event_date": "desc"}, "query": { "match_all": {} } }

    这将返回event_date中所有摄入内容的最新日期,并按照我希望的方式执行。

    当我使用Python时,我会得到以下错误:

    弹性搜索。例外情况。RequestError:RequestError(400,'parsing_exception','[size]查询格式错误,查询名称后没有start_object')

    电话:

    last_date_query = {
       "size": 1,
       "sort": { "event_date": "desc"},
       "query": {
          "match_all": {}
       }
    }
    
    if es is None:
        es = connect()
    
    search_result = es.search(index=index, query = last_date_query)
    

    对于我的简单查询,从python调用elasticsearch时,如何获得相同的查询结果?

    我在Python中尝试了上面的代码。

    1 回复  |  直到 1 年前
        1
  •  1
  •   Val    1 年前

    这个 query 参数应该只包含查询部分,大小和排序是搜索函数的其他参数。 你需要这样做

    sort = { "event_date": "desc"}
    last_date_query = {
       "match_all": {}
    }
    
    if es is None:
        es = connect()
    
    search_result = es.search(index=index, query = last_date_query, size = 1, sort = sort)