ElasticSearch的按日期排序问题

ES中有一个sort域,类型为date,格式是: yyyy-MM-dd HH:mm:ss

但是,在实际应用中,想仅仅按yyyy-MM-dd排序.我的处理过程是,用es的script,提取出日期,然后按数字排序代码如下:

  "sort" : {
        "_script" : {
            "script" : "floor(doc['sort_time'].value/(1000*3600*24))",
            "type":"number",           
            "order" : "desc"
        }
    }
        String script = "floor(doc['sort_time'].value/(1000*3600*24))";
        SortBuilder sortBuilder_by_date = SortBuilders.scriptSort(script,
                "number").order(SortOrder.DESC);

 

posted @ 2014-12-18 14:36  wmx3ng  阅读(18159)  评论(1编辑  收藏  举报