range:相当于SQL中的between,用来做范围过滤
1、测试数据,为文章添加浏览量字段数据
POST /forum/article/_bulk
{"update" : {"_id": "1"}}
{"doc": {"view_cnt": 30}}
{"update" : {"_id": "2"}}
{"doc": {"view_cnt": 50}}
{"update" : {"_id": "3"}}
{"doc": {"view_cnt": 100}}
{"update" : {"_id": "4"}}
{"doc": {"view_cnt": 80}}
2、搜索流量量在30 到 60之间的文章
GET /forum/article/_search
{
"query": {"constant_score": {
"filter": {"range": {
"view_cnt": {
"gt": 30,
"lt": 60
}
}}
}}
}
结果:
{
"took" : 3,
"timed_out" : false,
"_shards" : {
"total" : 5,
"successful" : 5,
"skipped" : 0,
"failed