查询es中某个字段为“”或null
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
boolQueryBuilder.must(
QueryBuilders.boolQuery()
.should(QueryBuilders.termQuery("要查的列名",""))
.should(QueryBuilders.boolQuery().mustNot(QueryBuilders.existsQuery("要查的列名"))
);
BoolQueryBuilder queryTotal = QueryBuilders.boolQuery();
if(StringUtils.isNotBlank(params.getRemarkFlag())){
if("1".equals(params.getRemarkFlag())){
queryTotal.filter(QueryBuilders.existsQuery("remarks"));
queryTotal.mustNot(QueryBuilders.termQuery("remarks",""));
queryTotal.mustNot(QueryBuilders.termQuery("remarks",0));
}else if("2".equals(params.getRemarkFlag())){
queryTotal.must(QueryBuilders.boolQuery()
.should(QueryBuilders.termQuery("remarks",0))
.should(QueryBuilders.termQuery("remarks",""))
.should(QueryBuilders.boolQuery()
.mustNot(QueryBuilders.existsQuery("remarks"))));
}
}
字符串为"’ filter 是重点