我正在使用ElasticSearch高级Rest Java客户端,想知道是否可以使用单个搜索API来搜索与具有多个值的单个字段匹配的文档。
例如,我想按一个ID搜索并想提供多个ID。像这样:
SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
sourceBuilder.query(QueryBuilders.matchQuery("userId", "123"));
sourceBuilder.query(QueryBuilders.matchQuery("userId", "321"));
我认为正在发生的是最新的重写了先前的,所以我总是得到与321相匹配的结果。有没有办法在单个搜索中做到这一点,或者您必须对这些类型的搜索使用Multi-Search API?
答案 0 :(得分:0)
我能够通过使用布尔查询来解决此问题。我用内部查询创建了外部必须的。这是一个例子。
require_once('big_int.php');