场景大致如下:
有一个发现栏目,用户点击进去,需要展示编辑勾选的数十个圈子(group)里最新的 100 条主题(topic)的集合,按主题的时间排序
group 表大概有 1 万条数据
topics 表大概有 100 万条数据
group 和 topics 是一对多关系
现在我的做法比较普通,每个用户点击/刷新页面的时候,查询圈子列表里“推荐”字段为 true 的圈子,得到圈子的 ids 集合,再用这个集合去 topics 表里面 where(:group_id => [圈子 ids 数组])这样来查询
请教一下,有没有更好,相对还不那么复杂的办法去做这个事情呢? 每个用户刷新都走一遍这两个表的全表查询好像太....