如何加快分页时候查询数据和总页数的速度? 建议先查询出主键的位置 例如select id from table order by id limit 100000,1;根据主键的位置确认需要的数据select * from table where id > (select id from table order by id limit 100000,1) limit pageSize 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 分页本身就是mysql效率比较慢的问题,特别是在大数据量的情况下的后面页数在设计的时候就应该考虑到主键的设置如果你是现在的情况,对于总数可以用应用程序去维护总数 是使用SSH框架开发的项目,设置在后台输出SQL语句后发现它执行了2次相同的语句,第一次是读取所有,然后直接拿个size()第二次再limit而在某些查询,这两条占的时间差不多一样的。后来试了下count计算总数,但是当有条件时,count一样很慢。没办法了,只有暂时先直接查出所有,然后再找list中获取数据,但总觉得这样做不好。另外弱弱再问多版主一个问题:EXPLAIN 主键的key_len竟然是152 正常么 如果实时性要求不高的话,可以将数据量比较大的表的总大小预存起来(t_tables_count)。在分页查询时,可以先到t_tables_count中查询出页数(省去查询总数目的时间)。之后查询具体页面时,用limit限制即可。 - -! key_len那个是因为id类型是varchar(50),用了uuid 略惨 发现如果转换下思维,使用异步(例如网页的AJAX)的方式:先执行读出数据的SQL,客户端显示数据后,再执行和计算count的SQL查询,算是个不错的解决方案,但如果能一步到位就更好了。 关于时间的问题 sql三个表查询命令怎么写 如何建这样的表 对在文本框输入模糊查询的问题 如何导入某几行文本进入mysql数据库? 请问高手在mysql中如何新建用户 My SQ L 的基础知识 如何提升操作mysql数据库的能力 MySQL多主键,其中一个主键使用AUTO_INCREMENT自增,结果报错!! Mysql启动后过几秒钟就自动停止了怎么解决啊? mysql连接中出现大量unauthenticated user 求:TokuDB相关文档和性能监控相关
在分页查询时,可以先到t_tables_count中查询出页数(省去查询总数目的时间)。
之后查询具体页面时,用limit限制即可。