1:数据库的存储引擎是innodb 表中有1千多万数据,如何优化select count(*) from tab where 1;
解决方案: 1)取出最大的自增ID,并记录缓存 maxID
2) select count(*) from tab where iAutoID <= MaxID; 记录缓存为fixCount
3)以后每次查询用户总数变成查询大于MaxID的用户数:
select count(*) from tab where iAutoID > MaxID 记录为currentCount
4) 总数为:currentCount+fixCount 有效的解决慢查询
2:分页查询的优化