如何从 Elastic Search 获取当前日期和时间(最好使用 Java API)?
我已经搜索了很长时间,发现 Range Queries 可以执行某些日期字段的数学运算,也可以使用脚本字段,但是我找不到任何返回当前日期的脚本。我所要求的仅仅是类似 SQL 的 now() 函数。
感谢您的阅读。
如何从 Elastic Search 获取当前日期和时间(最好使用 Java API)?
我已经搜索了很长时间,发现 Range Queries 可以执行某些日期字段的数学运算,也可以使用脚本字段,但是我找不到任何返回当前日期的脚本。我所要求的仅仅是类似 SQL 的 now() 函数。
感谢您的阅读。
在 Sense(您没有指定ES版本;这适用于2.3.2)中:
GET your_index/_search
{
"size": 1,
"script_fields": {
"now": {
"script": "new Date().getTime()"
}
}
}
yourSearchRequestBuilder.addScriptField("now", "new Date().getTime()");
这确实需要在your_index
中至少有一个文档,以便脚本字段有东西可以挂载; 这有点像黑客技巧。
now()
或在查询或聚合内部的Groovy/Painless脚本。 - Andrei Stefan