关于mysql表中有大文本limit慢的优化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于mysql表中有大文本limit慢的优化相关的知识,希望对你有一定的参考价值。

问题场景:

商品表goods,里面有几个大文本字段,类型用的MediumText,表中记录28万多。分页查询时用limit,在一般PC上需要12秒左右,这个数量级的数据不应该这么慢。

 

原因分析:

几个大文本拖慢了查询速度,如果只查主键或数字类型的字段则很快。有人说你分页干嘛查大文本啊,原因是产品经理和设计师一致认为分页应该显示些摘要比较美观。

 

解决方案:

1.通用做法:每次分页查询时,都提供一下开始Id,速度很快。

至于为何要在in语句里又包了一层临时表,因为mysql语法限制在in语句不能使用limit。

 

ps:由于保护项目的隐私,以上查询用了星号。

转自:http://fenglongsheng.com/post/10270.html

以上是关于关于mysql表中有大文本limit慢的优化的主要内容,如果未能解决你的问题,请参考以下文章

mysql通过“延迟关联”进行limit分页查询优化的一个实例

关于mysql中limit方面的查询优化

Mysql 数据库表中有索引为什么还是查询慢?

Mysql limit性能优化(小offset与大offset)

Mysql-Insert插入过慢的原因记录和解决

关于mysql的优化