因为数据库中的数据较多,上千万行,每页显示50条数据,这个查询起来倒是还不是很慢,关键是界面上要显示总页数,那么第一次查询数据库的时候就要查询一遍满足条件的记录的条数(select count(*) from t where ......),这个查询非常非常慢,大家又什么好的解决方法吗?谢谢。
这个是没办法的,建议做个异步来加载这个总数
如果你建立的是非聚集索引,那where后条件的顺序需要与 索引列的顺序是一至的如果条件用And 连接,另外尽量把限制较大的大件靠近where 。
异步加载总数可行,索引合理的话,这个问也没啥.如果数据表中的数据太多的话,就提供表分区,年分表,月分表等等方式处理.