我在这里看到了你们为下面给出的链接提供解决方案的帖子。 ElasticSearch Java API 从查询构建器中获取不同的值
有什么方法可以使用 实现不同的电子邮件org.elasticsearch.client.RestHighLevelClient
?你能帮我解决这个问题吗,我尝试了很多方法,但都无法解决。但我能够在 SQL Workbench 中实现相同的功能,下面使用 Kibana 翻译器给出了等效的 json 查询。
SELECT DISTINCT email_client.keyword
FROM email_reference;
下面给出了等效的 Elasticsearch 查询:
{
"from": 0,
"size": 0,
"_source": {
"includes": ["email_client.keyword"],
"excludes": []
},
"stored_fields": "email_client.keyword",
"aggregations": {
"email_client.keyword": {
"terms": {
"field": "email_client.keyword",
"size": 200,
"min_doc_count": 1,
"shard_min_doc_count": 0,
"show_term_doc_count_error": false,
"order": [
{
"_count": "desc"
},
{
"_key": "asc"
}
]
}
}
}
}
所以现在我想使用 RestHighLevelClient 形成这个 JSON 查询,我已经尝试过,但问题是 RestHighLevelClient 中没有 prepareSearch() 是否有其他方法可以使用 RestHighLevelClient 来实现?