用Java搜索日期类型的RangeQuery

时间:2019-12-04 10:25:56

标签: java elasticsearch

我用java中的elasticsearch client进行了查询,当我尝试搜索日期时,他们给了我这个错误提示

  

无法执行阶段[query],所有分片均失败; shardFailures {[-AAmwvoOSUmuCZKhh-SZug] [car] [0]:RemoteTransportException [[-AAmwvo] [127.0.0.1:9300] [索引:数据/读取/搜索[阶段/查询]]];嵌套:ElasticsearchParseException [无法解析日期字段[2019年12月4日星期三00:00:00 GMT + 01:00]

我的查询代码如下:


    private static final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
    String sourceDate = "2019-12-04T00:00:00.000Z";


        Date myDate = dateFormat.parse(sourceDate);

 if (query == null) {

                        query = QueryBuilders.boolQuery().must(QueryBuilders.rangeQuery("Date Field")

                                .from(myDate)

                                .to(myDate)

                                .includeLower(true)

                                .includeUpper(false));

                    } else {

                        query = query.must(QueryBuilders.rangeQuery("Date Field")

                                .from(myDate)

                                .to(myDate)
                                .includeLower(true)

                                .includeUpper(false));

            }

对这个问题有什么想法吗?谢谢

0 个答案:

没有答案