[JAVA]es范围查询

//闭区间查询
QueryBuilder qb1 = QueryBuilders.rangeQuery("${fieldName}").from(${fieldValue1}).to(${fieldValue2}); 
 
//开区间查询
QueryBuilder qb1 = QueryBuilders.rangeQuery("${fieldName}").from(${fieldValue1}, false).to(${fieldValue2}, false);
 
//大于
QueryBuilder qb1 = QueryBuilders.rangeQuery("${fieldName}").gt(${fieldValue});
 
 //大于等于
QueryBuilder qb1 = QueryBuilders.rangeQuery("${fieldName}").gte(${fieldValue}); 
 
//小于
QueryBuilder qb1 = QueryBuilders.rangeQuery("${fieldName}").lt(${fieldValue}); 
 
//小于等于
QueryBuilder qb1 = QueryBuilders.rangeQuery("${fieldName}").lte(${fieldValue});

时间范围查询

@Test
void testQueryRangeTime() {
  PageRequest pageable = PageRequest.of(0, 10);
  NativeSearchQueryBuilder builder = new NativeSearchQueryBuilder();

  RangeQueryBuilder queryBuilder = QueryBuilders.rangeQuery("createTime")
    .format("yyyy-MM-dd HH:mm:ss")
    .timeZone("GMT+8")
    .gte("2022-02-11 07:09:13")
    .lte("2022-02-11 07:55:40")
    .includeLower(true).includeUpper(true);

  NativeSearchQuery searchQuery = builder.withPageable(pageable)
    .withQuery(queryBuilder)
    .build();

  SearchHits<TbStory> search = elasticsearchRestTemplate.search(searchQuery, TbStory.class);
  List<SearchHit<TbStory>> searchHits = search.getSearchHits();
  for (SearchHit<TbStory> searchHit : searchHits) {
    TbStory tbStory = searchHit.getContent();
    System.out.println("========================================================");
    System.out.println(tbStory);
  }
}
// 增加价格区间的检索条件
if (searchRequest.getMinPrice() != null) {
    queryBuilder.must(QueryBuilders.rangeQuery(avagePriceStr)
		.from(searchRequest.getMinPrice().toString()).includeLower(true)
		.includeUpper(true));
}
if (searchRequest.getMaxPrice() != null) {
    queryBuilder.must(QueryBuilders.rangeQuery(avagePriceStr)
		.to(searchRequest.getMaxPrice().add(new BigDecimal(1)).toString())
		.includeUpper(false));
}

https://blog.shenmazong.com/albums/1404617327281123328/1493038437736898560.html#_4、时间区间查询

posted @ 2023-01-10 11:11  未月廿三  阅读(1753)  评论(0编辑  收藏  举报