0
주어진 데이터 모델 구조,집계 된 버킷 키를 필터링 하시겠습니까? 이 같은
{
Id: 123,
"string_facet": [
{
"name": "make",
"value": "Audi"
},
{
"name": "carListType",
"value": "PERSON EU"
},
{
"name": "modelType",
"value": ""
},
{
"name": "engineBrand",
"value": "APT"
},
{
"name": "typeDescription",
"value": "8D2"
}
],
"number_facet": [
{
"name": "typeNumber",
"value": 4614
},
{
"name": "serialNumber",
"value": 2
},
{
"name": "engineSize",
"value": 18
},
{
"name": "horsePower",
"value": 125
},
{
"name": "kw",
"value": 92
},
{
"name": "engineVolume",
"value": 1781
},
{
"name": "listType",
"value": 0
}
],
"dateTime_facet": [
{
"name": "fromDate",
"value": "1999-04-01T00:00:00"
},
{
"name": "toDate",
"value": "2000-10-01T00:00:00"
}
]
}
나는 집계 값 이름 당을 이름을 패싯하고 싶어. 그러나 다음과 같이 특정 이름을 가진면에만 관심이 있습니다. 및 engineBrand. 파셋은 중첩 된 유형입니다.
다음과 같은 .NEST 표현식을 시도했지만 여전히 모든 패싯 이름을 반환합니다.
.Global("global", g => g
.Aggregations(ag => ag
.Filter("global_makes", f => f
.Filter(ff => ff
.Nested(n => n
.Path("string_facet")
.Filter(pf => pf.Term("string_facet.name", "make")))
)
.Aggregations(agg => agg
.Nested("nested_string_facet", nested => nested
.Path("string_facet")
.Aggregations(stringFacet => stringFacet
.Terms("name", nameAgg => nameAgg.Field("string_facet.name").Size(0)
.Aggregations(nameAggNext => nameAggNext
.Terms("value", valueAgg => valueAgg.Field("string_facet.value").Size(0))
)
)
)
)
)
)
)
)
);
내가 지구 내에서 필터가 (쿼리에서 통과의 범위를 잃고), 다음 전용 "확인"일치 string_facet.name 필터링,하지만 결과는 여전히뿐만 아니라 다른 모든 이름이 사용될 수 있습니다. 이름이이 "make"인 버킷 만 포함하도록 집계를 필터링하는 방법은 무엇입니까?