SQL优化篇|课后题答疑
俊达

你好,我是俊达。
这一讲我们来看一下 SQL 优化篇中的思考题的解答。
第 17 讲
问题:
根据测试表 t_abc 的结构,分析下面这几个 SQL 语句的执行路径,有哪些区别?
公开
同步至部落
取消
完成
0/2000
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结

1. SQL优化中的索引使用情况和执行路径分析,包括组合索引的应用和区别,以及覆盖索引和skip scan的使用情况。 2. 对于MySQL中执行子查询速度慢的情况,可以通过改写SQL,先进行group by,然后再和原表join来优化查询速度。 3. 在数据库层面实现订单删除功能时,需要考虑添加is_deleted字段的索引,或者利用原先的order_status字段来满足需求,以提高查询效率。 4. 使用Hash Join和修改索引是解决SQL执行慢的有效方法,尽管执行计划的cost低不一定代表执行效率更高。 5. 改写子查询的两种方式分别对应了MySQL半连接转换中的Materialization和Duplicate weedout策略。 6. 使用force index可能存在风险,如指定的索引不存在或是invisible索引,同时优化器会认为全表扫描的成本是无穷大。要确保SQL中传入了指定索引的前缀字段的条件,以及分析走错索引的原因,适当使用force index提示.
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《MySQL 运维实战课》,新⼈⾸单¥59
《MySQL 运维实战课》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论