gpt4 book ai didi

java - 我如何在 Elasticsearch 中进行此查询?

转载 作者:行者123 更新时间:2023-11-29 11:51:38 25 4
gpt4 key购买 nike

像这样的 Postgresql 查询:

select * from equipment where production_day < now() + interval '-1 years' * endurance_period + interval '1 month'

endurance_period 是表中的列名。如何在 ElasticSearch 中将此查询转换为查询 DSL(JSON)?

最佳答案

您可以对日期字段上的字段进行日期时间操作

在范围过滤器中使用日期数学/函数操作的小例子

{
"range" : {
"date" : {
"gte" : "now-1d/d",
"lt" : "now/d"
}
}
}

所以你的查询可能看起来或多或少像这样

{
"query": {
"filtered": {
"filter": {
"bool": {
"must": [{
"range": {
"created_at": {
"lte": "now-1*3d/d"
}
}
}]
}
}
}
}
}

您可以扩展 gte 方程以匹配您的搜索过滤条件。

Date Function elasticsearch

关于java - 我如何在 Elasticsearch 中进行此查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39011125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com