java - 带通配符的 Elasticsearch multiMatchQuery
问题描述
我需要在spring boot中使用elaticsearch spring数据在java中使用通配符搜索所有文件数据这是我的代码
String queryString = "362*";
final Query searchQuery = new NativeSearchQueryBuilder().withFilter(QueryBuilders.multiMatchQuery(queryString))
.build();
SearchHits<Measurement> meas = elasticsearchTemplate.search(searchQuery, Measurement.class);
System.out.println(meas.getTotalHits());
我无法使用通配符获得结果。
有人可以在这里帮忙吗?
解决方案
多匹配查询是匹配查询的多字段版本。和这个一样,它不支持通配符,但适用于分析的文本。请参阅https://www.elastic.co/guide/en/elasticsearch/reference/7.13/query-dsl-multi-match-query.html和https://www.elastic.co/guide/en/上的文档elasticsearch/reference/7.13/query-dsl-match-query.html
推荐阅读
- javascript - 带有打字效果的Javascript文本冒险
- python - 如何在 Tkinter 的文本字段中制作可清除的文本?
- python - 运行 Python 脚本的关键错误(使用 Atom)
- cookies - 如何在 GitHub Actions 中使用 cookie/身份验证运行测试?
- ubuntu - 无法建立与 http://controller:9696/v2.0/networks 的连接
- javascript - 我的查询选择器没有捕获所有 DOM 元素
- google-apps-script - 如何在 getSheetByName 中使用变量作为参数?
- django - DRF 中的动作装饰器不适用于 url_path
- python - 如何在 Python 中为协变可变集合类类使用类型提示?
- optaplanner - 使用时间链模式,为什么下一个任务的值总是为空?