1.索引分类
a) 唯一索引, 作用是数据约束,保证数据唯一,还有就是数据索引,提高查询效率
b)一般索引,只有数据索引的作用,
2.唯一索引的建立
create unique index 索引名 on 表名(字段名)
ok,假设有一个Emploeyy表,里面有一个empName字段,我们来为empName添加唯一索引
create unique index idx_empname on employee(empname);
3.一般索引
create index 索引名 on 表名(字段名)
ok,现在我们为employee的address字段,添加一般索引
create index idx_address on employee(address);
我们还可以为两多个字段建立索引
create unique index idx_test on employee(field1,field2);
这样,为field1,field2添加了唯一索引,field1和field2的组合是唯一的了
还可以指定索引排序
create index idx_test employee(field1 ,field2 desc);;
4.函数索引
如果在我们的查询条件使用了函数,那么索引就不可用了。
可以用建立函数索引的方式,来解决这个问题
例如:
select * from product where nvl(price,0.0)>1000.0 ;
这里,nvl(price,0.0)使用了函数,索引不能利用price字段上做的索引了
ok,我们来创建函数索引
create index index_price on product(nvl(price,0.0));
5.索引的删除
drop index 索引名
drop index idx_empname;
6.其它的
唯一索引能极大的提高查询速度,而且还有唯一约束的作用
一般索引,只能提高30%左右的速度
经常插入,修改,应在查询允许的情况下,尽量减少索引,因为添加索引,插入,修改等操作,需要更多的时间
可以在order by的字段,where的条件字段,join的关联字段添加索引
比如:
select * from table1 t1
left join table2 t2 on t1.字段A=t2.字段B
where t1.字段C = '值'
order by t1.字段D
这里,A,B,C,D字段,都应该添加索引
分享到:
相关推荐
Oracle 索引与分区索引介绍 Oracle 索引与分区索引是 Oracle 数据库中两个重要的概念,它们都是为了提高查询性能和数据存储效率而设计的。在本文中,我们将详细介绍 Oracle 索引与分区索引的概念、特点、分类、创建...
Oracle_Index 索引
**Oracle索引详解** Oracle索引是数据库管理系统中用于提高查询效率的重要数据结构。它的工作原理类似于书籍的目录,允许数据库系统快速定位到所需的数据行,而无需扫描整个表。索引的存在使得对大量数据的查找、...
本文将深入探讨Oracle索引的原理、创建方法,并结合SQL优化策略,帮助你提升数据库查询速度,降低资源消耗。 首先,我们要理解索引的基本概念。在数据库中,索引类似于书籍的目录,它为数据提供快速访问的途径。...
Oracle数据库中的索引是优化查询性能的关键工具,它允许快速定位和访问数据。常见的索引类型包括B*树索引和位图索引,每种都有其特定的应用场景和优势。 1. **B*树索引**:这是最常见的索引类型,类似于二叉树结构...
### Oracle索引使用样例详解 #### 一、索引并行创建 在Oracle数据库中,并行创建索引可以显著提高创建索引的速度,尤其是在处理大量数据时。下面的SQL语句展示了如何并行创建一个索引: ```sql CREATE INDEX IDX_GD...
本笔记主要探讨了两个关键概念:约束和索引,这些都是Oracle数据库中的基础但至关重要的元素。 **1. 约束(Constraints)** 约束是Oracle数据库中用于确保数据完整性的规则。它们分为以下几种类型: - **非空约束...
"数据库创建索引SQL Oracle" 数据库索引是数据库性能优化的重要手段之一。创建索引可以提高查询速度,降低数据库的负载,提高数据的安全性。本文将详细介绍数据库创建索引的原则、分类、创建方法、管理和优化等方面...
oracle 用户 全部 索引 all index sql
本文主要总结了重建Oracle索引的相关知识点。 一、重建索引的前提条件 当表上的数据频繁进行`UPDATE`和`DELETE`操作,或者执行了`ALTER TABLE ... MOVE`操作导致ROWID改变时,可能需要考虑重建索引。这些操作可能...
### Oracle全文索引详解 #### 一、Oracle全文索引概述 Oracle全文索引是一种特殊类型的索引,它主要用于提高基于文本的查询性能。自从Oracle 7.3版本开始引入了这一特性,允许用户通过Oracle服务器提供的上下文...
### Oracle索引的基本概念 #### 1. 创建索引 索引是数据库中一种用于提高数据检索速度的数据结构。通过创建索引,可以显著提升查询性能。例如,在`student`表上创建一个基于`sno`列的索引: ```sql CREATE INDEX ...
Oracle数据库是世界上最广泛使用的数据库系统之一,其性能优化的一个关键因素就是索引的使用。索引可以帮助快速查找和访问数据库中的数据,显著提高查询效率。本篇将详细讲解Oracle数据库中的索引及其重要性。 一、...
本文主要介绍Oracle数据库中不同类型的索引及其内部结构,以及各种索引的工作原理和适用场景。 首先,Oracle使用平衡树(B-Tree)作为其索引的基础结构。B-Tree是一种自平衡的树形数据结构,它保证了在树的任意层级...
Oracle8i 以后的新功能可以对索引的无用空间进行合并,它由下面命令完成:ALTER INDEX [user.]index COALESCE; 例如:ALTER INDEX ename_idx COALESCE; 三、删除索引 当不需要时,可以将索引删除,释放出硬盘空间...