SELECT MAX(history_id) history_id FROM user_action_history WHERE " . $where . " GROUP BY associate_id, associate_type ORDER BY history_id DESC
这个语句的作用是取出每个动作最新动态,虽然对索引进行了优化,但是采用了一些计算与 GROUP BY,我们新建了一个表,专门存放需要频繁调用的最新动态解决此问题,好处有:
[]最新动态表比动态表数据量量少了四分之二,而且均为整形(INT)数据[/][]去掉了 MAX 与 GROUP BY 计算,采用 IN 直接命中的方式查询[/]
这个版本周五发布,欢迎大家拍砖