从 elasticsearch 索引中检索唯一文档
Retrieve unique documents from elasticsearch index
如何从 index.Do 中获取所有唯一文档我需要为文档的所有字段编写聚合查询。我可以在不为每个 n 个字段编写聚合的情况下获得唯一文档吗?
你可以用脚本做到这一点:
PUT test/doc/1
{ "field1": "value1", "field2": "value2" }
PUT test/doc/2 { "field1": "value2", "field2": "value3" }
PUT test/doc/3 { "field1": "value1", "field2": "value3" } PUT test/doc/4 { "field1": "value3", "field2": "value4" }
GET test/_search { "size": 0, "aggs": { "cardinality": { "cardinality": { "script": { "inline": "[ doc['field1'].value, doc['field2'].value ]" } } } } }
如何从 index.Do 中获取所有唯一文档我需要为文档的所有字段编写聚合查询。我可以在不为每个 n 个字段编写聚合的情况下获得唯一文档吗?
你可以用脚本做到这一点:
PUT test/doc/1
{ "field1": "value1", "field2": "value2" }
PUT test/doc/2 { "field1": "value2", "field2": "value3" }
PUT test/doc/3 { "field1": "value1", "field2": "value3" } PUT test/doc/4 { "field1": "value3", "field2": "value4" }
GET test/_search { "size": 0, "aggs": { "cardinality": { "cardinality": { "script": { "inline": "[ doc['field1'].value, doc['field2'].value ]" } } } } }