【发布时间】: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