可以使用RangeQueryBuilder来构建查询条件,如下所示:

// 获取一个月前的时间戳
long oneMonthAgo = System.currentTimeMillis() - 30 * 24 * 60 * 60 * 1000L;

// 构建查询条件,最近一个月的数据
RangeQueryBuilder queryBuilder = QueryBuilders.rangeQuery("latestTs").gte(oneMonthAgo);

// 如果需要查询一个月内的任意时间段的数据,可以再添加一个范围条件
queryBuilder = queryBuilder.lt(System.currentTimeMillis());

这段代码会构建一个查询条件,只查询latestTs字段在一个月内的数据。如果需要查询一个月内的任意时间段的数据,可以再添加一个范围条件,限制latestTs在当前时间之前。

java构建es查询条件根据latestTs字段只查一个月以内的数据然后根据latestTs查询一个月内的任意时间段的数据

原文地址: https://www.cveoy.top/t/topic/fHwY 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录