加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

一次很是风趣的SQL优化经验

发布时间:2019-04-05 12:06:12 所属栏目:编程 来源:风过无痕
导读:场景 我用的数据库是mysql5.6,下面简朴的先容了局景 课程表: createtableCourse( c_idintPRIMARYKEY, namevarchar(10) ) 数据100条 门生表: createtableStudent( idintPRIMARYKEY, namevarchar(10) ) 数据70000条 门生后果表SC: CREATEtableSC( sc_idin

那么再来执行下sql:

  1. SELECT s.* from   
  2. Student s  
  3. INNER JOIN SC sc  
  4. on ssc.s_id = s.s_id  
  5. where sc.c_id=0 and sc.score=100 

执行时刻0.001s

执行打算:

这里是mysql举办了查询语句优化,先执行了where过滤,再执行毗连操纵,且都用到了索引。

调解内容为SC表的数据增添到300W,门生分数更为离散。

先回首下:

  1. show index from SC 

执行sql

  1. SELECT s.* from   
  2. Student s  
  3. INNER JOIN SC sc  
  4. on ssc.s_id = s.s_id  
  5. where sc.c_id=81 and sc.score=84 

执行时刻:0.061s

这个时刻轻微慢了点

执行打算:

这里用到了intersect并集操纵,即两个索引同时检索的功效再求并集,再看字段score和c_id的区分度,单从一个字段看,区分度都不是很大,从SC表检索,c_id=81检索的功效是70001,score=84的功效是39425。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读