一、最好查询语句中不要使用“*”来代替列名,而采用实际会用到的列名。
因为星号会查询一个表所有的列,这会消耗系统的查询时间
二、尽量减少表查询次数
三、用[not] exists 代替[not] in
四、创建索引(最好是给每个查询条件的相关列都创建一个索引)
(1)创建索引的语句:
create index index_name on table_name(column_name);
(2)监视索引(通过监视,可以知道哪些索引未被使用,可将这些索引删除)
语句:
alter index index_name monitoring usage;
(3)检查索引使用情况
语句:
select * from v$object_usage;
(4)删除索引语句
drop index index_name;
五、选择驱动表(紧跟from之后的表,通常以全表扫描的方式被访问)
给驱动表创建索引
六、尽量避免全表扫描大表
以下情况,oracle会进行全表扫描
(1)所查询的表没有设置索引
(2)需要返回所有的行,带星号"*"
(3)带like并使用“%”这样的语句
(4)对索引主列有条件限制,但使用了函数
(5)带有is null 、is not null 或!=等字句也会导致全表扫描
七、注意where子句的连接顺序
由于oracle采用自下而上的顺序解析where子句,根据这个原理,表之间的连接必须写在其他where条件之前。那些可以过滤掉最大数据记录的条件必须写在where子句的末尾,也就是在进行表连接操作之前,过滤掉的记录数越多越好。
八、查看执行计划,根据执行计划进行的cost进行修改
相关推荐
sql常用优化手段
资源名称:SQL Server性能优化与管理的艺术内容简介:本书共15章,分为三部分,第一部分(第1-2章)为概述部分,阐述SQLServer方面的“性能”及相关概念。并给出常规的性能及性能相关的问题侦测的“方法论”,读者...
在实施SQL优化时,还需要综合考虑查询的性能、数据的存储结构、以及用户的查询习惯。在某些情况下,例如当表中的数据量非常少时,全表扫描可能会比使用索引更高效。因此,在实际操作中,需要结合具体情况,通过测试...
对于关系型数据的常规优化,我们该从那些方面入手,具体的操作是什么,以及在面试环节中我们该如何回答,通过该思维导图就可以让我们很清晰的对SQL的常规优化有了清晰地认识,
可以通过调整索引策略来优化查询性能。 #### 十六、影响查询计划的参数 PostgreSQL中有许多配置参数可以影响查询执行计划的选择,例如`enable_seqscan`、`enable_indexscan`等。合理设置这些参数有助于获得更好的...
Oracle的SQL优化是数据库管理中的关键任务,它旨在提高查询速度、降低资源消耗,从而提升整个系统的性能。以下是一些重要的优化策略: 1. **全表扫描与索引扫描**: - 全表扫描应尽量避免,尤其对于大数据量的表,...
这款916KB的小型工具能够简化对SQL Server 2000、2005和2008数据库的访问,无需进行常规的安装过程,特别适合于临时使用或者在没有权限安装新软件的环境中。 在使用这款免安装的SQL Server查询分析器时,你需要了解...
### Oracle优化—SQL优化 #### 一、数据库、数据表、数据表I/O优化原则 在Oracle数据库中,为了确保数据库系统的高效运行,必须对数据库、数据表以及数据表I/O进行合理的规划与优化。 - **数据库规划原则** - **...
以下是一些关于SQL优化的关键知识点: 1. **WHERE子句中的连接顺序**:在编写SQL查询时,应遵循Oracle数据库的解析顺序,将连接(JOIN)操作放在WHERE子句的最前面,然后是能够过滤大量记录的条件。这样做可以优化...
前言 一直以来,对于搜索时模糊匹配...然后搜个简单的模糊匹配条件如 LIKE “血常规%”,可以发现查询计划生成如下,索引并没有被使用上,这是因为传统的btree索引并不支持模糊匹配 查阅文档后发现,pgsql可以在Btree
【SQL Server数据库查询性能优化】 随着信息技术的飞速发展,数据库系统在各行各业的应用越来越广泛,数据量呈现爆炸式增长。在这种背景下,SQL Server数据库查询性能的优化显得至关重要。本文主要探讨了影响SQL ...
### SQL优化初级版知识点详解 #### 一、操作符优化 **1. IN操作符** - **优点**:使用`IN`操作符编写的SQL语句通常易于编写且清晰直观,符合现代软件开发的趋势。 - **缺点**:使用`IN`操作符可能导致SQL性能较低...
尽管HQL和Criteria API提供了面向对象的查询方式,但有时仍需使用原生SQL,尤其是在处理数据库特定的功能或性能优化时。Hibernate允许在需要时直接执行SQL查询,如下所示: ```java String sql = "SELECT * FROM ...
- **实践与经验**: 经常查看执行计划有助于提高SQL优化的能力。 **2.2 表级优化** - **过滤与SPOOL**: 如果过滤性不很强,又不需要重分布,对大表尽可能不要只做一下过滤就进一次SPOOL,最好是直接与别的表 JOIN,...
### SQL语句优化技术分析 #### 一、操作符优化 **1. IN操作符** - **优点**:使用`IN`操作符编写的SQL语句通常更易于编写且易于理解,符合现代软件开发风格。 - **缺点**:使用`IN`操作符的SQL语句性能较低。...
在SQL的世界里,优化查询性能是一项至关重要的任务,尤其对于大型数据库系统而言。"优化SQL的另一种思维"这个主题引导我们探索不同于常规的优化策略,它可能涉及到对SQL语句的重构、数据库设计的改进以及利用特定的...
2. **查询优化**:通过索引,SQL 可以快速访问和处理大量数据,尤其是在多表联接查询时,利用 Rushmore 算法提高查询效率。 3. **简洁性**:SQL 语言简化了程序设计,避免了使用常规编程语言进行数据库操作的繁琐。 ...
1. 数据库维护:SQLDbx可以帮助数据库管理员进行常规的维护工作,如创建和修改表结构、索引优化、性能调优等。 2. 数据分析:通过SQLDbx,分析师可以快速获取所需数据,进行复杂的数据分析和挖掘,为业务决策提供...