因此,我们希望通过用户操作获得最多积分的对象(评论,图片上传等)。每个动作都以其point-value和target存储。
select sum(points) as points, target_type,target_id from user_actions where target_type="Modification" group by target_id order by points DESC limit 100
显示0到99行(总共100行,查询耗时200.7865秒。)
表格大小为4M行。
指向 target_type , target_id 。
如果我解析查询,它说它正在使用临时文件。这显然是在杀死它。
问题
我是否有机会加快查询速度?
答案 0 :(得分:1)
如果未在其他地方使用,您可以添加其他索引或更改现有索引。
Points
列未编入索引,如果它将显着提高您的效果:
CREATE INDEX user_actions_indx
ON user_actions (target_type,target_id,points);