当前位置:主页 > 查看内容

工作中遇到的99%SQL优化,这里都能给你解决方案

发布时间:2021-06-06 00:00| 位朋友查看

简介:前几篇文章介绍了mysql的底层数据结构和mysql优化的神器explain。后台有些朋友说小强只介绍概念,平时使用还是一脸懵,强烈要求小强来一篇实战sql优化,经过周末两天的整理和总结,sql优化实战新鲜出炉, 大家平时学习和工作中,遇到的90% 的sql优化都会介绍……

工作中遇到的99%SQL优化,这里都能给你解决方案

前几篇文章介绍了mysql的底层数据结构和mysql优化的神器explain。后台有些朋友说小强只介绍概念,平时使用还是一脸懵,强烈要求小强来一篇实战sql优化,经过周末两天的整理和总结,sql优化实战新鲜出炉, 大家平时学习和工作中,遇到的90% 的sql优化都会介绍到,介意篇幅过长,分成3篇文章哈。

  1. CREATE TABLE `employees` ( 
  2.  `id` int(11) NOT NULL AUTO_INCREMENT, 
  3.  `namevarchar(24) NOT NULL DEFAULT '' COMMENT '姓名'
  4.  `age` int(20) NOT NULL DEFAULT '0' COMMENT '年龄'
  5.  `position` varchar(20) NOT NULL DEFAULT '' COMMENT '职位'
  6.  `hire_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '入职时间'
  7.  PRIMARY KEY (`id`), 
  8.  KEY `idx_name_age_position` (`name`,`age`,`position`) USING BTREE 
  9. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='员工表'
  10. insert into employees(name,age,position,hire_time) values('LiLei', 22, 'manager', NOW()) 
  11. insert into employees(name,age,position,hire_time) values('HanMeimei', 23, 'dev', NOW()) 
  12. insert into employees(name,age,position,hire_time) values('Lucy', 23, 'dev', NOW()) 

全值匹配

索引的字段类型是varchar(n):2字节存储字符串长度,如果是utf-8, 则长度是3n+2

  1. EXPLAIN select * from employees where name='LiLei'
工作中遇到的99%SQL优化,这里都能给你解决方案  
本文转载自网络,原文链接:https://www.toutiao.com/a6732439031054877187/
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!

推荐图文


随机推荐