我对elasticsearch中的facets有一点问题。 我有一个表视频,一个表频道,1个频道有很多视频。 我只是想在X最新视频中显示每个频道有%of views_count的甜甜圈。
在SQL中:
SELECT SUM(views_count) FROM videos WHERE videos.channel_id = X ORDER BY published_at DESC LIMIT Y
我可以在所有视频上执行此操作,但我不会使用LIMIT来做到这一点。任何的想法?? 感谢
答案 0 :(得分:1)
如果我理解正确,您希望将您的方面限制在最新的100个视频中吗?
我认为这是可能的,因此必须在查询(或facet_filter)上进行限制,设置要考虑的数据范围:
{
"facets": {
"views_count": {
"terms": {
"field": "videos.channel_id"
}
}
},
"from": 0,
"query": {
"range" : {
"published_at" : {
"from" : <some_start_date>
}
}
}
}