Hi,
I am looking for a way to paginate my results under "products" aggregation following is my query.
{
"size": 0,
"aggs": {
"sub_category": {
"terms": {
"size": 10000,
"field": "cat_name.keyword"
},
"aggs": {
"product": {
"cardinality": {
"field": "product_id"
}
}
}
},
"by_color": {
"terms": {
"field": "color_title.keyword",
"size": 10000
},
"aggs": {
"product": {
"cardinality": {
"field": "product_id"
}
}
}
},
"by_brand": {
"terms": {
"field": "brand_name.keyword",
"size": 10000
},
"aggs": {
"product": {
"cardinality": {
"field": "product_id"
}
}
}
},
"max_price_range": {
"max": {
"field": "item_price"
}
},
"min_price_range": {
"min": {
"field": "item_price"
}
},
"products": {
"terms": {
"field": "product_id",
"size": 20
},
"aggs": {
"data": {
"top_hits": {
"size": 1,
"_source": {
"includes": []
}
}
}
}
}
},
"query": {
"bool": {
"filter": {
"script": {
"script": {
"source": "doc['image_src.keyword'].size()!=0",
"lang": "painless"
}
}
}
}
}
}
In my query I am doing aggregation and found total count base on color, brand etc. In a same query I am getting products as well using top hits. I like to paginate my product data but pagination should not affect total count of color, brand and etc.
I there any way to do that.
Thanks in advance