面试中SQL优化回答思路

面试中,相信不少人遇到个SQL优化的问题,答案基本都是千篇一律,用数据库索引技术。


对此问题,在闲暇之余进行了思路,阅读了mysql技术内幕的相关书籍。根本的优化之道还的从SQL语句出发。
SQL模板:


(8) SELECT  (9) DISTINCT <SELECT_LIST>
(1) FROM <LEFT_TABLE>  <JOIN_TYPE> 
(2) JOIN <RIGHT_TABLE> 
(3) ON  <JOIN_CONDITION>
(4) WHERE  <WHERE_CONDITION>
(5) GROUP BY <GROUP BY_LIST>
(6) WITH <CUBE|ROLLUP>
(7) HAVING  <HAVING_CONDITION>
(10) ORDER BY <ORDER_BY_LIST>
(11) LIMIT <LIMIT_NUMBER>


JOIN_TYPE -< LEFT OUTER JOIN  , INNER JOIN>


1. 减少查询字段数
2. 表关联尽量用主键
3. 查询条件尽量避免模糊查询
4. 避免使用排序字段,排序字段尽量使用主键
5. 尽量使用限制查询条件

6. 查询条件使用有效索引


仅供参考!






  • 2
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

半部论语

如果觉得有帮助,打赏鼓励一下

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值