作家
登录

你可能不知道的10条SQL技巧,涨知识了!

作者: 来源: 2017-12-06 11:52:07 阅读 我要评论

开辟者大年夜赛路演 | 12月16日,技巧立异,北京不见不散


你可能不知道的10条SQL技能,涨常识了!

这几天在写索引,想到一些有意思的TIPS,欲望大年夜家有收成。

一、一些常见的SQL实践

(1)负向前提萌芽不克不及应用索引

not in/not exists都不是好习惯

可以优化为in萌芽:

  1. select * from order where status in(2,3)  

(2)前导模糊萌芽不克不及应用索引

而非前导模糊萌芽则可以:

  1. select * from order where desc like 'XX%'  

(3)数据区分度不大年夜的字段不宜应用索引

  1. select * from user where sex=1 

原因:性别只有男,女,每次过滤掉落的数据很少,不宜应用索引。

经验上,能过滤80%数据时就可以应用索引。对于订单状况,如不雅状况值很少,不宜应用索引,如不雅状况值很多,可以或许过滤大年夜量数据,则应当建立索引。

(4)在属性长进行计算不克不及射中索引

  1. select * from order where YEAR(date) < = '2017' 
  1. select * from order where desc like '%XX' 

即使date上建立了索引,也会全表扫描,可优化为值计算:

  1. select * from order where status!=0 and stauts!=1 
  1. select * from order where date < = CURDATE() 

或者:

  1. select * from order where date < = '2017-01-01'  

二、并非周知的SQL实践

(5)如不雅营业大年夜部分是单条萌芽,应用Hash索引机能更好,例如用户中间

  1. select * from user where uid=? 
  2.  
  3. select * from user where login_name=? 

      推荐阅读

      程序员,在你 40 岁之前,要有个 Plan B

    开辟者大年夜赛路演 | 12月16日,技巧立异,北京不见不散 简评:法度榜样员的职业生活和 NBA 篮球活动员大年夜致类似,你怎么看?跟着年纪的增长,法度榜样员可能要多想一想前程。但不管若>>>详细阅读


    本文标题:你可能不知道的10条SQL技巧,涨知识了!

    地址:http://www.17bianji.com/lsqh/39510.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)