作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的文档有一个关键字,其值为“”,我如何通过java Elasticsearch搜索它?
没有像代码那样的效果:
query.must(QueryBuilders.boolQuery()
.should(QueryBuilders.regexpQuery("paymentRetCode", ""))
);
最佳答案
您需要使用script
查询来检查字符串的长度是否为0:
Script script = new Script(ScriptType.INLINE, "myscript", "doc.paymentRetCode.value.length() == 0", new HashMap())
query.must(QueryBuilders.boolQuery()
.should(QueryBuilders.scriptQuery(script))))
);
脚本查询并不理想,但是,如果您需要检测具有空字符串的文档,则应该设置 null
而不是空字符串,在这种情况下,您将能够使用否定的 存在
查询:
QueryBuilders.boolQuery()
.mustNot(QueryBuilders.existsQuery("paymentRetCode"))
关于java - 如何在Elasticsearch中搜索长度为0的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43544730/
我是一名优秀的程序员,十分优秀!