- 4
- 0
- 约6.93千字
- 约 11页
- 2017-02-09 发布于重庆
- 举报
SQL代码性能优化
SQL代码性能优化
在传统的数据库优化理论中存在着一些有争议的问题,例如:
传统上认为,数据库通过使用索引就一定可以更快地遍历表,而且在实际的数据库系统中的优化器都是根据定义的索引来提高性能。
但是,如果在SQL语句的where子句中写的SQL代码不合理,就会造成优化器删去索引而使用全表扫描,一般这种SQL语句就是所谓的劣质SQL语句。在编写SQL语句时我们应清楚优化器根据何种原则来删除索引,这有助于写出高性能的SQL语句。
研究SQL调整的目标就是要确定执行计划对于语句是最优的。最直接的是采用set timing on命令来检验SQL执行的速度,并且计算查询需要花费的时间。
除了分析与试验相结合的考证这些有争议的数据库优化理论与方法外,在实际的运用中我进一步总结出了一些新的优化技巧和方法,总结如下:
一、避免索引失效
如果对where子句的写法不注意,即使某些列存在索引,但是由于编写了劣质的SQL,系统在运行该SQL语句时也不能使用该索引,而同样使用全表扫描,这就造成了响应速度的极大降低。
1. IS NULL 与 IS NOT NULL
不能用null作索引,任何包含null值的列都将不会被包含在索引中。即使索引有多列这样的情况下,只要这些列中有一列含有null,该列就会从索引中排除。也就是说如果某列存在空值,即使对该列建索引也不会提高性能。
任何在where子句中使用is
您可能关注的文档
- SpringMVC强大的数据绑定注解式控制器详解.doc
- solidworks二次开发毕业论文超好.doc
- Spring_Security_3_安全权限管理手册(最新).doc
- spring事务的五种配置方法.doc
- Spring依赖注入的几种方式.doc
- spring依赖注入的方式总结.doc
- Spring对Web技术的支持.doc
- Spring框架课程设计指导书.doc
- Spring框架的设计理念与设计模式分析.doc
- Spring知识点.doc
- 广西南宁市第二中学2025-2026学年八年级下学期开学收心自测英语试卷(含解析).docx
- 广西南宁市武鸣区武鸣高级中学等校2026年高考模拟信息卷数学试题(含解析).docx
- 广西壮族自治区崇左市江州区2025-2026学年八年级上学期期末语文试题(含解析).docx
- 广西壮族自治区防城港市防城区2025—2026学年八年级上学期期末地理试题(含解析).docx
- 部编版一年级下册语文第五单元培优卷A卷(含答案).docx
- 福建省厦门海沧实验中学2025-2026学年高二上学期期末地理试题(含解析).docx
- 甘肃省天水市甘谷县模范初级中学2025-2026学年九年级数学下学期第一次检测考试试题(含解析).docx
- 甘肃省武威市凉州区爱华育新学校2025-2026学年九年级上学期12月月考英语试题(解析版).docx
- 甘肃张掖市2025--2026学年下学期九年级数学阶段反馈试卷(含解析).docx
- 广东惠州博罗县2025-2026学年九年级上学期阶段诊断历史试卷(含解析).docx
最近下载
- 电极锅炉与储热罐在火电灵活性中的应用.pptx VIP
- 高中语文知识点总结归纳(汇总8篇).pdf VIP
- 《骑鹅旅行记》整本书阅读推进课2导读单.docx VIP
- NBT 31011-2019 陆上风电场工程设计概算编制规定及费用标准_.docx VIP
- 西大版2025信息科技四年级下册教学课件第8课数据可展示.pptx VIP
- SH-T 3535-2012 石油化工混凝土水池工程施工及验收规范.pdf VIP
- 2025年年产10万吨硫酸生产厂建设项目可行性研究报告.docx VIP
- 电流保护接线.ppt VIP
- 标准图集-22CJ87-3 采光、通风、排烟天窗(三).pdf VIP
- 《必背60题》农林经济管理26届考研复试高频面试题包含详细解答.pdf
原创力文档

文档评论(0)