您现在的位置是:首页 > PHP框架交流PHP框架交流
sql优化 GROUP BY多字段分组 分页查询速度慢
上善若水2021-01-12 15:07:48【PHP框架交流】 6190人已围观
简介项目中遇到一个网页十分的卡慢,逐条排查,将sql放进去执行,执行时间居然高达19秒,怪不得慢,于是请教大佬,最后sql控制在1到两秒之间,现在想想,不同的写法,sql的执行效率真是天差地别呀!首先我们
项目中遇到一个网页十分的卡慢,逐条排查,将sql放进去执行,执行时间居然高达19秒,怪不得慢,于是请教大佬,最后sql控制在1到两秒之间,现在想想,不同的写法,sql的执行效率真是天差地别呀!
首先我们来看看原sql
SELECT * FROM `publish_task_walmart_new` group by parent_sku,account_id order by id desc limit 0,50
再看看优化后的sql
SELECT * from publish_task_walmart_new where id in( select t.id FROM(select id FROM publish_task_walmart_new GROUP BY parent_sku,account_id order by id desc limit 0,50) as t)
或者子查询
SELECT * from publish_task_walmart_new where id in( select t.id FROM(select id FROM publish_task_walmart_new GROUP BY parent_sku,account_id order by id desc limit 0,50) as t)
首先查询慢第一想到的有没有建立索引..
我看了下发现parent_sku
和account_id
都有建立索引,EXPLAIN
分析居然没有走索引
突然想到联合索引
于是建了这个联合索引.
再去查询时间缩短到了10秒,效率提升了一半,然而还是太慢.
于是请教了大佬,就有了上面的结论!
数据库一共就80W条记录,也不多,看来还是得看看高性能mysql呀!
Tags: sql
很赞哦! (28)
相关文章
随机图文
-
PHP8.2新特性 析取范式 (DNF)类型 允许 null、false 和 true 作为独立类型 Traits 中的常量
PHP8.2新特性析取范式(DNF)类型,DNF类型允许我们组合union和intersection类型,遵循一个严格规则:组合并集和交集类型时,交集类型必须用括号进行分组。1.析取范式 -
PHP8.1新特性 Final 类常量
PHP8.1新特性 Final 类常量 大家都知道cost修饰的常量是不可以改变的,然而再继承中却可以改变,新版的final就解决这个问题。旧版写法 class Foo { public co -
springboot 使用quartz 创建简单定时任务 入门篇
quartz是一款优秀的任务调度框架,尽管在springboot中已经集成有任务调度,但是绝大多数情况也还是使用了quartz在执行. 创建springboot项目 同时引入quartz包pom.xm -
史上最强笑话二十则,让人笑到肚子疼
一、一个IT经理走进一家拉面馆,问:请问你们需要客户端吗?界面似乎还有点陈旧啊。老板一愣:面一般是伙计端,忙的时候才需要客户端。界面……界面绝对是新鲜的啊,不过排骨是昨天的。二、如果你给我的,和你给别人的是一样的,那我就不要了。食堂阿姨甩起大勺:“你到底要不要?要不要?”三、小时候每次走夜路,我都会感觉总有人跟踪我,于是养成了走几步就猛一回头的习惯,十年之后,我成了一名探戈老师。四、电