我有一个映射形式的索引:
"mappings": {
"created_time" :{
"type": "date"
},
"user_id": {
"type": "keyword",
}
}
}
}
我想查找在某个小时范围内(例如说晚上10点到12点)创建的所有用户。
我不确定该怎么做,因为我读过各种聚合方法,但似乎没有合适的方法。
答案 0 :(得分:1)
您要使用名为script query的东西。
它看起来像这样:
query: {
bool: {
"filter": {
"script": {
"script": {
"source": "doc['created_time'].getHourOfDay() >= min && doc['created_time'].getHourOfDay() < max",
"lang": "expression",
"params": {
"min": 10,
"max": 12
}
}
}
}
}
这将为您提供所需的匹配。