方案1: 修改表引擎(能改最好)
直接修改表引擎,如果默认是InnoDB,由于该引擎不保存表的具体行数,在数据量上百万后统计基本在1秒以上;
修改为MyISAM;但是分页查询的时候同样是在100万以后的记录查会非常慢;
方案2: 多建一个表用触发器维护
尝试使用插件的自定义count语句,但是能找到的只有select max(id) 这样的,查询数量是模糊结果,不精确
,方法是在原select语句下增加这一块 _COUNT 是固定后缀 getAllUser是查询语句id
<select id="getAllUser_COUNT" resultType="Long">
select max(id) from users</select>;
误差比较大,所以最后采用触发器维护另外一个表;