面试官问:你平时项目中用了哪些SQL优化手段?给…
2020-05-20 09:14:54来源:博客园 阅读 ()
面试官问:你平时项目中用了哪些SQL优化手段?给小伙伴问懵了
最近,周围的同事离职的越来越多,身边的小伙伴好像也有动作了,找他聊聊。
“咋了,你也要走?”
小伙伴:”现在的工作太枯燥,缺少成就感,想换一个,有技术挑战的那种“
”你现在不挺好么,leader对你也不错,也挺器重,感觉你前途一片光明“
小伙伴:”这叫不错?这叫器重?我这种边缘项目,一没技术难度、二没流量、三没数据量,更别谈高并发了,天天做不完的需求,修不完的BUG,在这里就感觉温水煮青蛙,我就是那只呱呱呱,我得去外面看看“
"..."
看来积怨已深,我只能打住,说了一些恭维的话,结束了交流。
这几天,感觉小伙伴的气压比较低,我猜是面试受打击了,于是又找他聊。
“最近咋了?情况不对啊”
小伙伴:“上次去面试,面试官问我,项目中用了那些SQL优化,我一下就懵了,没回答上来...”
“懵啥?”
小伙伴:“我这种天天接需求,写的SQL只关心查出来的数据正确与否 ,哪有需要做优化?”
“这...”
小伙伴:“只能怪自己,这破项目,SQL随便写写也不会出问题“
小伙伴:”最后出问题的是自己,我废了。”
小伙伴:“对了,常见的SQL优化有哪些?”
“行,我给你整理下。”
“其实大部分主要对查询进行优化,最重要的是尽量避免全表扫描”
- 适当的创建索引,考虑在 where 及 order by 涉及的列上建立索引
- 尽量避免在 where 子句中对字段进行 null 值判断、使用!=或<>操作符、使用 or 来连接条件、对字段进行函数操作等
- in 和 not in 也要慎用,否则可能会导致全表扫描
- 很多时候用 exists 代替 in 是一个好的选择
- 尽量使用数字型字段,若只含数值信息的字段尽量不要设计为字符型,这会降低查询和连接的性能,并会增加存储开销。
- 尽可能的使用 varchar 代替 char ,因为首先变长字段存储空间小,可以节省存储空间,其次对于查询来说,在一个相对较小的字段内搜索效率显然要高些。
SQL优化手段还有很多,大多数都是摸打滚爬的经验积累,只有自己碰到了,才有深刻的理解和体会。
最后,小编整理了一套技术资料不仅能精准消除技术盲点、累计面试经验,更可以攻克JVM、Spring、分布式、微服务等技术难题。
海量电子书,珍藏版
领取步骤
1.加微信获取
原文链接:https://www.cnblogs.com/yunxi520/p/12924063.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 2020年深圳中国平安各部门Java中级面试真题合集(附答案) 2020-06-11
- JVM常见面试题解析 2020-06-11
- 作为一个面试官,我想问问你Redis分布式锁怎么搞? 2020-06-10
- 送你一份年薪百万的抖音Java岗内部面试题 2020-06-09
- 一口气说出 6种 延时队列的实现方案,面试稳稳的 2020-06-08
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash