时间范围是由start_date
和end_date
定义的,我正在尝试获取给定日期03/27/2019
在该时间范围内的所有文档。
GET users/_search
{
"query": {
"bool": {
"must": [
{
"range": {
"start_date": {
"lte": "03/27/2019"
}
}
},
{
"range": {
"end_date": {
"gte": "03/27/2019"
}
}
},
{
"terms": {
"locations": [
"all"
]
}
}
],
"must_not": [
{
"match": {
"gender": "male"
}
}
]
}
}
}
查询不会产生适当的文档,例如具有以下值的文档:
"start_date": "11/25/2018"
"end_date": "12/25/2019"
不归还
字段映射:
"start_date": {
"type": "date",
"format": "MM/DD/yyyy"
},
"end_date": {
"type": "date",
"format": "MM/DD/yyyy"
},
最佳答案
我认为您的日期格式有误。
应该是MM/dd/yyyy
而不是MM/DD/yyyy
关于elasticsearch - 使用两个字段选择时间范围,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55378839/