0
我有存储在ES产品,我想通过自己的规模聚集他们。我想设计下面的行为。即使在查询之外的每个术语都会根据查询接收术语计数。全球长期聚集 - Elasticsearch 5
所以查询大小[ “S”, “M”]我想收到:
S:1
M:1
L:0
这在某种程度上可能吗?
这里是我的设置,我得到以下结果:
S:1
M:1
但是L是完全丢失。
PUT demo
{
"mappings": {
"product": {
"properties": {
"size": {
"type": "keyword"
}
}
}
}
}
PUT demo/product/1
{
"size": "S"
}
PUT demo/product/2
{
"size": "M"
}
PUT demo/product/3
{
"size": "L"
}
GET demo/_search
{
"size": 0,
"query": {
"bool": {
"must": [
{
"terms": {
"size": [
"S",
"M"
]
}
}
]
}
},
"aggs": {
"size": {
"terms": {
"field": "size"
}
}
}
}
这似乎并不在elasticsearch 5 https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-filtered-query.html –
@JosefRousek我的工作编辑了我的答案。现在在ES5中再试一次 – skal88
谢谢你的努力,但这也行不通。在发布之前我已经做了相当长时间的研究,所以它只是我描述问题的问题。 –