有的时候,我们为了图方便,会直接使用SELECT * 一次性查出表中所有的数据:
SELECT * FROM student
执行结果如图所示:
可以看到,执行时间花了2s左右,耗时很长!
在实际开发中,我们给页面展示的数据可能就只要2-3个字段,如果直接全部查出来了,岂不是白白浪费了字段,同时也损耗了性能,这是因为SELECT * 不会走覆盖索引,会出现大量的回表操作,从而导致SQL性能大幅度降低。
我们上面建立了联合索引,我们就可以只查询索引列,这样会大幅度提升查询效率,优化的SQL如下:
SELECT name,address,phone FROM student
执行结果如图所示:
这样执行的速度大大提高!
分析SQL:
使用EXPLAIN关键字执行这段SQL:
EXPLAIN SELECT name,address,phone FROM student
执行结果如图所示:
确实走了我们建立的复合索引。
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
本文链接:https://www.jhelp.net/p/myMrVrgmS5HLuoeD (转载请保留)。
关注下面的标签,发现更多相似文章
本站推荐
-
933
-
929
-
900
-
894
-
872
文章目录