`

提高SQL执行效率的16种方法

    博客分类:
  • DB
 
阅读更多
1.尽量不要在where中包含子查询;

关于时间的查询,尽量不要写成:where to_char(dif_date,’yyyy-mm-dd’)=to_char(’2007-07-01′,’yyyy-mm-dd’);

2.在过滤条件中,可以过滤掉最大数量记录的条件必须放在where子句的末尾;

FROM子句中写在最后的表(基础表,driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有三个以上的连接查询,那就需要选择交叉表 (intersection table)作为基础表,交叉表是指那个被其他表所引用的表;

3.采用绑定变量

4.在WHERE中尽量不要使用OR,可以使用IN代替

5.用EXISTS替代IN、用NOT EXISTS替代NOT IN;

6.避免在索引列上使用计算:WHERE SAL*12>25000;

7.用IN来替代OR: WHERE LOC_ID=10 OR LOC_ID=15 OR LOC_ID=20

8.避免在索引列上使用IS NULL和IS NOT NULL;

9.总是使用索引的第一个列;

10.用UNION-ALL替代UNION;

11.避免改变索引列的类型:SELECT…FROM EMP WHERE EMPNO=’123′,由于隐式数据类型转换,to_char(EMPNO)=’123′,因此,将不采用索引,一般在采用字符串拼凑动态SQL语句出现;

12.’!=’ 将不使用索引;

13.优化GROUP BY;

14.避免带有LIKE参数的通配符,LIKE ’4YE%’使用索引,但LIKE ‘%YE’不使用索引

15.避免使用困难的正规表达式,例如select * from customer where zipcode like “98___”,即便在zipcode上建立了索引,在这种情况下也还是采用顺序扫描的方式。如果把语句改成select * from customer where zipcode>”98000″,在执行查询时就会利用索引来查询,显然会大大提高速度;

16.尽量明确的完成SQL语句,尽量少让数据库工作。比如写SELECT语句时,需要把查询的字段明确指出表名。尽量不要使用SELECT *语句。组织SQL语句的时候,尽量按照数据库的习惯进行组织。

转自:http://www.penglixun.com/tech/database/improve_sql_efficiency_16_ways.html
分享到:
评论

相关推荐

    SQL艺术、提高SQL执行效率的方法总结

    SQL艺术、提高SQL执行效率的方法总结SQL艺术、提高SQL执行效率的方法总结SQL艺术、提高SQL执行效率的方法总结SQL艺术、提高SQL执行效率的方法总结SQL艺术、提高SQL执行效率的方法总结SQL艺术、提高SQL执行效率的方法...

    sql执行效率提高

    以下是一些针对提高 SQL 执行效率的重要知识点: 1. **选择最有效的表名顺序**:在 FROM 子句中,Oracle 从右到左处理表,所以应该先处理记录数最少的表,以减少扫描的数据量。对于多表联接,基础表(被其他表引用...

    Oracle中SQL语句执行效率的查找与解决

    ### Oracle SQL执行效率:查找与解决 #### 一、资源消耗分析 在Oracle中,SQL语句执行效率低下通常表现为资源过度消耗,这可能包括CPU时间、内存使用、磁盘I/O等。具体分析可从以下几个方面入手: 1. **响应时间...

    使用BULK COLLECT, MERGE 语句提高sql执行效率

    详细介绍了使用 BULK COLLECT 进行批量操作 提高sql的执行效率 使用MERGE INTO USING 一条sql搞定 新增和修改 使用connect by 进行递归树查询

    优化sql语句执行效率几点注意事项

    随着技术的发展,新的优化策略和工具不断出现,保持学习和适应能力是提高SQL执行效率的关键。 总之,优化SQL语句执行效率是一个多方面的工作,需要结合具体业务场景,综合运用索引策略、SQL编写技巧、数据库配置和...

    SQL执行提高效率的多种方法

    以下是从给定的文件信息中提取并详细解释的关于如何提高SQL执行效率的知识点: ### 1. 使用精确日期比较 在进行日期查询时,避免使用模糊的日期字符串比较。例如,如果要查询特定日期的数据,应使用精确的日期格式...

    提高sql执行效率的几点建议

    在IT领域,尤其是在数据库管理与优化方面,提高SQL执行效率是至关重要的。高效的SQL查询不仅能够提升系统的响应速度,还能显著降低服务器资源消耗,从而节省成本。以下是从标题、描述及部分提供的内容中提炼出的关键...

    提高Oracle中SQL的执行效率

    本文将详细介绍几种有效的方法来提高Oracle中SQL的执行效率,包括选择合适的表名顺序、优化WHERE子句中的连接顺序、减少不必要的数据库访问等策略。 #### 1. 选择最有效率的表名顺序 在基于规则的优化器中,Oracle...

    ORACLE 优化sql语句提高oracle执行效率 .doc

    ORACLE 优化 SQL 语句提高 Oracle 执行效率 Oracle 是一个功能强大的关系数据库管理系统,然而,如果不正确地使用 SQL 语句,可能会导致执行效率低下。为了提高 Oracle 的执行效率,需要遵循一些最佳实践。下面是...

    oracle优化sql执行效率-表分析

    为提高oracle的sql执行效率,优化性能,通过oracle表分析功能进行调整,能加快sql查询效率2倍以上

    sql.rar_提高SQL查询效率的30种方法

    以下是一些提高SQL查询效率的30种方法,旨在帮助数据库管理员和开发人员提升查询性能。 1. **使用索引**:为经常用于搜索的列创建索引,可以显著加快查询速度。复合索引适用于多个字段的联合查询。 2. **避免全表...

    SQL 提升SQL执行效率诀窍

    在SQL编程中,提升SQL执行效率是至关重要的,特别是在处理大量数据时。下面将详细解释如何根据查询逻辑执行顺序来优化SQL语句。 首先,理解SQL的逻辑执行顺序是优化的前提。按照标准的SQL解析顺序,它依次为: 1. ...

    优化sql语句提高oracle执行效率(34种方法).pdf

    ### 优化SQL语句提高Oracle执行效率的关键方法 在数据库管理和维护工作中,优化SQL语句是提高Oracle数据库执行效率的重要手段之一。以下是从提供的文档摘要中提取并详细阐述的几个关键知识点: #### 1. 选择最有效...

    Oracle提高SQL执行效率的3种方法

    本文将详细探讨提高SQL执行效率的三种主要方法,这些方法可以帮助减轻数据库剖析过程对系统性能的影响。 首先,我们可以利用`ordered`提示来优化表格合并的顺序。在处理多表连接查询时,Oracle需要分析所有可能的...

    优化sql语句提高oracle执行效率(34种方法).doc

    理解这些方法并将其应用于SQL查询优化,可以帮助你显著提高Oracle数据库的执行效率。在编写SQL时,考虑这些策略,尤其是对于复杂的多表联接和大数据量操作,效果尤为明显。同时,了解SQL的工作流程,何时应用特定的...

    优化sql语句提高oracle执行效率(34种方法).docx

    以下是一些提高 Oracle 执行效率的方法: 1. **选择正确的表名顺序**:在 FROM 子句中,Oracle 从右到左处理表,因此应将最小的表(基础表)放在最后。在多表连接查询中,选择交叉表作为基础表,即被其他表引用的表...

    Oracle提高SQL查询效率(SQL优化).doc

    Oracle 提高 SQL 查询效率(SQL 优化) 本文将详细介绍 Oracle 中提高 SQL 查询效率的技巧和策略,包括选择最有效率的表名顺序、WHERE 子句中的连接顺序、SELECT 子句中避免使用‘*’、减少访问数据库的次数、使用 ...

    sql的执行效率优化

    SQL 执行效率优化是数据库管理和优化中非常重要的一方面,好的 SQL 执行效率可以极大地提高系统的性能和响应速度。本文将从多方面讨论 SQL 执行效率优化的方法和技术。 1. 选择最有效率的表名顺序 在基于规则的...

    提高批量SQL执行程序速度

    提高批量SQL执行程序的速度需要考虑多个因素,包括批量发送SQL、指定SQL条数、触发事件函数、DataAdapter.Update(DataTable)方法和SqlBulkCopy类的应用等。通过合理地使用这些方法可以大大提高系统的性能和效率。

Global site tag (gtag.js) - Google Analytics