【问题标题】:elasticsearch time query for hour of the day一天中小时的弹性搜索时间查询
【发布时间】:2017-11-14 03:03:08
【问题描述】:

我正在使用 elasticsearch python 客户端。

我的索引中有一个日期范围字段。我想要中午 12 点到 2 点之间的文档。所以,这是我写的查询,

query = {"query":"filter": [{"range" : { "status_time_frame" : {"gte" : "10/11/2017","lte" : "13/11/2017", "relation":"within"}}}],{"script":{"source": "doc.status_time_frame.status_time_frame.getHourOfDay() >= min && doc.status_time_frame.status_time_frame.getHourOfDay() <= max","params": {"min":12,"max":14}}}}

但是当我尝试运行它时它给了我语法错误。

  File "vehicle-report-query-elastic.py", line 3
    query = {"query":{"filter": [{"range" : { "status_time_frame" : {"gte" : "10/11/2017","lte" : "13/11/2017", "relation":"within"}}}],{"script":{"source": "doc.status_time_frame.status_time_frame.getHourOfDay() >= min && doc.status_time_frame.status_time_frame.getHourOfDay() <= max","params": {"min":12,"max":14}}}}}

                                                                                                                                                                                                                                                                                                                             ^
SyntaxError: invalid syntax

我做错了什么?

【问题讨论】:

  • 您需要从您的 range 查询中删除 relation: within
  • 我做了,仍然给我语法错误。
  • "filter" 之前还缺少一个左大括号
  • @Val bro 感谢您的回复和帮助。但我仍然得到错误。我什么都试过了。你能在答案中写完整的查询吗?谢谢。

标签: python elasticsearch


【解决方案1】:

正确的查询应该是这样的:

{
  "query": {
    "filter": [
      {
        "range": {
          "status_time_frame": {
            "gte": "10/11/2017",
            "lte": "13/11/2017"
          }
        }
      },
      {
        "script": {
          "source": "doc.status_time_frame.status_time_frame.getHourOfDay() >= min && doc.status_time_frame.status_time_frame.getHourOfDay() <= max",
          "params": {
            "min": 12,
            "max": 14
          }
        }
      }
    ]
  }
}

【讨论】:

  • 这个运气好吗?
猜你喜欢
  • 1970-01-01
  • 2014-10-11
  • 1970-01-01
  • 1970-01-01
  • 2014-11-09
  • 1970-01-01
  • 1970-01-01
  • 2014-06-22
相关资源
最近更新 更多