在我的数据表中,我有一个开始日期列和一个结束日期列。我需要过滤掉开始日期和结束日期之间表格中的数据。 并使用此post,我能够编写过滤器谓词。但是它仅过滤确切的开始日期和确切的结束日期。 API以字符串格式(例如“ 2018-08-30”)返回日期。 那么,如何过滤开始日期和结束日期之间的数据?
答案 0 :(得分:1)
首先,您需要添加范围过滤器,或者在查询中添加范围必须以获取所需日期之间的结果集。一旦获得正确的结果集,就可以根据需要聚合和过滤数据。
POST _search
{
"query": {
"bool": {
"filter": [
{
"range": {
"endDate": {
"gte": "2018-07-30",
"format": "yyyy-MM-dd"
}
}
},
{
"range": {
"startDate": {
"lte": "2018-08-30",
"format": "yyyy-MM-dd"
}
}
}
]
}
}
}
希望这可以解决您的问题。