最近遇到了查询es中某个字段为“”或null,网上查了好多都是 去除null的查询
下面是我查询时解决方法,
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
boolQueryBuilder.must(
QueryBuilders.boolQuery()
.should(QueryBuilders.termQuery("要查的列名",""))
.should(QueryBuilders.boolQuery().mustNot(QueryBuilders.existsQuery("要查的列名"))
);
这里把termQuery()和mustNot()方法外面包了一层 就可以同时判断 “” 和null了
本文介绍了如何在Elasticsearch中查询某个字段值为空字符串或null的情况。通过使用BoolQueryBuilder和should子句的组合,可以同时匹配空字符串和不存在的字段值。这是一个有效的查询技巧,避免了只去除null查询的局限性。
989

被折叠的 条评论
为什么被折叠?



