Elasticsearch区间匹配规则
先从官网看看range datatypes的类型简介:
一、数字类型
1、通过kibana创建integer_range类型索引字段
PUT integer_range_example
{
"mappings": {
"integerIndex": {
"properties": {
"num": {
"type": "integer_range"
}
}
}
}
}
2、索引中加入数据(项目中,可利用datax脚本导入)
PUT integer_range_example/integerIndex/1?refresh
{
"num" : {
"gte" : 10,
"lte" : 20
}
}
其中 gte(大于等于),lte(小于等于),也可以结合使用gt(大于),lt(小于)
也可以以数组的形式put进去,进而达到多区间匹配
PUT integer_range_example/integerIndex/1?refresh
{
"num" : [
{
"gte" : 10,
"lte" : 20
},{
"gt" : 30,
"lt" : 40
},{
"gte" : 50,
"lt" : 60
},{
"gt" : 70,
"lte" : 80
}
]
}
3、根据num检索结果
GET integer_range_example/_search
{