WHERE条件的优化:
1、IN:至少多一个转换的过程(先试图转成多个表的连 接,如果转换不成功先执行IN里面的子查询,再查询外层记录)
2、NOTIN:不能应用表索引,可用NOT EXISTS替换的
3、<>: 不用索引,全表扫描。替换方案:>X OR <Y
4、>与>=的区别 >2会从2开始找数据,>=3则是从3开始找数据。但是>=3不知道是否会影响索引功能,采用哪个需根据实际数据(自己估测)选择。
5、 LIKE:'%%'将不使用索引,'%'引用范围索引
6、UNION:二表链接后进行排序,删除重复,再返回结果。UNION ALL 直接合并返回结果。
7、SQL书写影响,尽量做到带上所有者(性能),保持一种风格(同一查询,书写不一时可能会共享不了前一次查询产生的缓存)
8、 WHERE 后面条件顺序:把过滤数据越多的放到越前面。
9、FROM后表顺序:数量越小的放前面。
10、索引的利用:
A、采用函数处理的字段不能利用索引,如:
substr(COL1,1,4)=’ABCD’,优化处理:COL1 like ‘ABCD%’
B、进行了显式或者隐式转换的不能利用索引,如:
COL1+20>50,优化处理:COL1>30
'X'+COL1>'X5400021452', 优化处理:COL1>'5400021542'
C、条件内包含多个字段的不能利用索引,如:
COL1>COL2,无法 进行优化
COL1+COL2=’ABCD’,优化处理:COL1=’AB’ and COL2=’CD
关于索引
1、有大量重复值、且经常有范围查询(between, >,< ,>=,< =)和order by、group by发生的列,可考虑建立群集索引;
2、经常同时存取多列,且每列都含有重复值可考虑建立组合索引;
3、组合索引要尽量使关键查询形 成索引覆盖,其前导列一定是使用最频繁的列。
分享到:
相关推荐
【数据库知识小结】 在IT领域,数据库是一个至关重要的组成部分,尤其在数据管理和分析中扮演着核心角色。这里我们将深入探讨Oracle数据库以及一些常见的数据库理论和优化策略。 首先,让我们来了解一下数据库三...
### 数据库编程小结 #### 一、访问数据库技术方法 数据库编程涵盖了多种技术方法,这些方法被广泛应用于客户端和服务器端的编程中。本文旨在总结数据库编程中的关键技术和最佳实践。 ##### 1. 几种数据库访问方法...
数据库是存储和管理数据的核心工具,SQL(结构化查询语言)是访问和操作数据库的语言。在本文中,我们将深入探讨一些...理解这些基本的SELECT语句及其在多表查询中的应用,对于优化数据库查询性能和数据管理至关重要。
数据库设计是创建高效、可靠和易于管理的数据库的关键步骤,它涵盖了从理解用户需求到实际部署和维护数据库的全过程。本章重点讲述了数据库设计的基本流程,主要包括四个阶段:需求分析、概念结构设计、逻辑结构设计...
小结 MySql 数据库性能优化是指通过调整和优化数据库的各种参数、结构和查询语句,提高数据库的运行速度和效率,减少资源占用和系统瓶颈。通过了解 MySql 数据库性能优化的相关知识点,可以提高数据库的运行速度和...
Oracle数据库优化是数据库管理员日常工作中至关重要的一环,尤其是在Oracle 10g这样的企业级数据库系统中。优化不仅仅是针对SQL语句的改进,而是涵盖了整个数据库系统,包括硬件、操作系统、数据库配置以及应用设计...
LNH_MySQL 09-MySQL数据库多种优化生产方案小结05.mp4
### ORACLE数据库知识点小结 #### 1. ORACLE DATABASE 10g的新特性 - **网格计算数据库**:Oracle 10g引入了网格计算的概念,允许在多个服务器之间共享资源,提高数据库的可用性和性能。 - **优化资源用量**:通过...
在优化数据库查询时,合理使用exists可以有效提高查询效率,因为Oracle数据库在执行查询时,并不是直接遍历所有数据行,而是通过索引来快速定位子查询结果,从而加快整个查询过程。 在处理主键冲突的问题上,不同...
Oracle数据库是世界上最...总之,理解和管理Oracle数据库的外键以及游标限制对于优化数据库性能和确保应用正常运行至关重要。了解并正确使用这些工具和技巧,可以帮助你在日常数据库操作中避免常见的问题,并提升效率。
目录 推荐序 前言 第1章 认识Oracle RAC 1.1 RAC产生的背景 1.2 RAC体系结构 1.2.1整体结构 1.2.2物理层次结构 1.2.3逻辑层次结构 1.3 RAC的特点 ...1.5.3数据库管理软件 1.6本章小结 ...15.5本章小结
- 正规化是将数据结构分解为更小、更独立的表,以减少数据冗余和异常,常见的范式有第一范式(1NF)、第二范式(2NF)、第三范式(3NF)等。 10. **ER图绘制与关系模式转换**: - ER图是用于表示实体、关系和属性...
数据库实训是学习数据库技术的重要环节,它通过实践的方式让学生深入理解和掌握数据库的设计、实现与管理。在本次实训中,我体验了从需求分析到数据库设计,再到编程实现的全过程,以下是我总结的一些关键知识点。 ...
ODBC强调数据库的通用性和独立性,DAO专为Access数据库优化,而OLE DB则提供了一个更为通用和灵活的数据访问接口,涵盖了多种数据类型和数据源。这三种技术在开发跨平台、高性能的数据库应用时都扮演了重要角色。
数据库运维产品调研分析小结 数据库运维产品调研分析小结是对数据库运维产品的调研分析结果,旨在了解数据库运维产品的市场需求和客户需求,提高产品的竞争力和满足度。本文将从概述、内部产品调研分析、工单分析、...
DB2数据库存储过程是数据库管理系统中一种非常重要的功能,它允许开发者编写一组SQL语句,封装成一个可重用的程序单元...在实际开发中,熟练掌握存储过程和游标的应用,对于优化数据库操作和提升应用程序性能至关重要。
1.7 小结 17 练习 17 参考文献和简介 19 部分练习答案 19 第2章 数据库系统体系结构 22 2.1 引言 22 2.2 三级体系结构 22 2.3 外模式 24 2.4 概念模式 26 2.5 内模式 26 2.6 映象 27 2.7 数据库管理员 27 2.8 数据库...