gpt4 book ai didi

solr - 使用两个日期字段的Elasticsearch daterange

转载 作者:行者123 更新时间:2023-12-03 02:01:45 52 4
gpt4 key购买 nike

我从客户端发送文档查询,其中currentDate在附加到所有文档的两个值之间。该文档具有expireDateavailableDate

如何制定此查询?推测我想出了以下方法,但不起作用:

{
"constant_score": {
"filter": {
"range" : {
"expiredate" : {
"lte": "2015-08-15T11:28:45.114-07:00"
},
"availabledate" : {
"gte": "2015-08-11T11:28:45.114-07:00"
}
}
}
}
}

这甚至看起来是错误的,因为afaik范围不能在复合对象或单面范围的数组上工作。我想我可以添加一个全新的过滤器,所以每个字段一个。有没有一种方法可以将一个日期范围用于两个字段?

最佳答案

表示该查询的正确方法是使用两个range过滤器(每个日期字段一个),然后将它们放在另一个bool/must过滤器中。

{
"query": {
"constant_score": {
"filter": {
"bool": {
"must": [
{
"range": {
"expireDate": {
"lte": "2015-08-15T11:28:45.114-07:00"
}
}
},
{
"range": {
"availabledate": {
"gte": "2015-08-11T11:28:45.114-07:00"
}
}
}
]
}
}
}
}
}

关于solr - 使用两个日期字段的Elasticsearch daterange,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31764706/

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