欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

es 日期范围查询(java)

程序员文章站 2022-06-07 13:14:22
...

es建立表的时候要将类型设置为date,也就是设置mapping

PUT jtthink
{
  "mappings": {
    "ipaddr": {
      "properties": {
        "birth": {
          "type": "date" 
        }
      }
    }
  }
}

然后插入数据,注意插入数据的格式

PUT /jtthink/ipaddr/11
{
	"name":"zhangfei",
	"age":33,
	"birth":"2017-09-08T10:10:10"
}


其他相关操作

查看类型
GET jtthink/ipaddr/_mapping
查看数据			
GET /jtthink/ipaddr/11
删除数据
DELETE /jtthink/ipaddr/13

Java的操作

QueryBuilder qb = rangeQuery("birth")
                .from("2017-01-01T10:10:01").to("2017-12-31T10:10:01");

        SearchResponse sr = client.prepareSearch("jtthink")
                .setTypes("ipaddr").setQuery(qb).get();
        SearchHit[] result = sr.getHits().getHits();
        for(SearchHit  searchHit: result){
            System.out.println(searchHit.getSourceAsString());
        }