网站首页 javascript技术
mysql--表优化与未优化的差距有多远
发布时间:2016-07-19 08:43查看次数:3342
mysql--表优化与未优化的差距有多远
差一个长城那么远!
看下边示例:
SELECT `t_event_signup`.`id`, `t_event_signup`.`name`, `t_event_signup`.`event_group`, `t_event_signup`.`works_name`, `t_event_signup`.`guide_name`, `t_product_attachment`.`image_path` AS `zuopin_image`, `t_orderform`.`status` as chongzhi, `t_orderform`.`order_num` , `t_event_signup`.`branch`, `t_signup`.`mobile` FROM `t_event_signup` inner JOIN `t_orderform` ON `t_orderform`.`task_id` = `t_event_signup`.`id` inner JOIN `t_product_attachment` ON `t_product_attachment`.`envent_signup_id` = `t_event_signup`.`id` inner JOIN t_signup on t_signup.userid = t_event_signup.userid WHERE t_event_signup.isDelete = 1 AND zuopin_image <> '' and saishi_ID = '76' AND `t_orderform`.`status` <> '3' GROUP BY t_event_signup.id ORDER BY `t_event_signup`.`id` DESC LIMIT 20 OFFSET 0
未进行索引优化:
未优化查询速度:
索引优化后:
优化后查询速度:
事实证明不会建立索引的程序员不是好程序员,不会表字段类型选择的不是好程序员
比如这个示例中的:userid 是MD532位的字符, 前边的程序员4个表存储的都是varchar 80长度? 为啥不能
用char 32呢? 正因为他们的这样,造就今天的这个示例!
优化过程:对left join ON 的字段 建立普通索引
对Userid 字段更改数据类型char 32
查询速度提高多少倍? 44813 / 33 = 1357.969696969697 倍
2016年7月19日 德玛西亚 浙江 杭州
关键字词:mysql--表优化与未优化的差距有多远