如果您想在 Elasticsearch 中查询某个字段不重复的记录,可以使用聚合(Aggregation)来实现。具体而言,可以使用 Terms 聚合对该字段进行聚合,并设置 size 为 0,以便获取所有不重复的值。
下面是一个示例查询,该查询将在名为 "my_index" 的索引中聚合 "my_field" 字段,并返回所有不重复的值:
GET my_index/_search
"size": 0,
"aggs": {
"unique_values": {
"terms": {
"field": "my_field",
"size": 10000
在上面的查询中,size 参数设置为 0,以便仅返回聚合结果而不返回实际文档。聚合的名称为 "unique_values",它使用 Terms 聚合来聚合 "my_field" 字段。"size" 参数设置为 10000,以便最多返回 10000 个唯一的值。
请注意,由于 Elasticsearch 中的聚合是针对整个索引的,因此此类查询可能需要较长的时间才能返回结果,具体取决于索引的大小和复杂性。