`
jsczxy2
  • 浏览: 1273785 次
  • 性别: Icon_minigender_1
  • 来自: 常州
文章分类
社区版块
存档分类
最新评论

oracle索引介绍

阅读更多

今天用oracle表连接查询感觉太慢了,想了下应该是索引没有建才导致这样的问题,以后还是注意数据库的索引的优化才好...... 

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索引介绍.pdf

    【Oracle索引介绍】 在数据库管理系统中,索引是一种至关重要的数据结构,它极大地提高了数据检索的速度。Oracle数据库,作为一款广泛使用的RDBMS(关系型数据库管理系统),同样利用索引来优化查询性能。本篇文章...

    ORACLE索引介绍与高性能SQL优化

    Oracle数据库是目前最流行的企业级数据库之一,它提供了丰富的数据管理功能,其中包括索引技术。索引是数据库中一种重要的辅助结构,它可以帮助加快数据检索速度,优化SQL性能。在处理大量的数据时,索引的作用尤其...

    ORACLE索引介绍与高性能SQL优化.pdf

    Oracle索引是数据库管理系统Oracle中的一种重要数据结构,它的主要作用是提高数据查询的效率,减少I/O操作,以及在某些情况下消除磁盘排序。Oracle使用B*树(B星树)作为其主要的索引数据结构,无论是非唯一索引还是...

    oracle索引与分区索引介绍

    Oracle 索引与分区索引介绍 Oracle 索引与分区索引是 Oracle 数据库中两个重要的概念,它们都是为了提高查询性能和数据存储效率而设计的。在本文中,我们将详细介绍 Oracle 索引与分区索引的概念、特点、分类、创建...

    《Oracle_全文索引_详细介绍》_40页.pdf

    ### Oracle全文索引详解 #### 一、Oracle全文索引概述 Oracle全文索引是一种特殊类型的索引,它主要用于提高基于文本的查询性能。自从Oracle 7.3版本开始引入了这一特性,允许用户通过Oracle服务器提供的上下文...

    oracle分区与索引

    #### 二、Oracle 索引介绍 索引是用于快速查找表中数据的一种数据结构。Oracle提供了多种类型的索引,每种类型都有其适用场景。 ##### 1. 常见索引类型 - **B树索引**:最常见的索引类型,适用于各种查询场景。 -...

    Oracle 索引 使用方法

    Oracle 索引 使用方法,索引 使用原理, 索引 使用顺序过程

    oracle索引,常见索引问题

    Oracle数据库中的索引是优化查询性能的关键工具,它允许快速定位和访问数据。常见的索引类型包括B*树索引和位图索引,每种都有其特定的应用场景和优势。 1. **B*树索引**:这是最常见的索引类型,类似于二叉树结构...

    ORACLE索引详解及SQL优化

    本文将深入探讨Oracle索引的原理、创建方法,并结合SQL优化策略,帮助你提升数据库查询速度,降低资源消耗。 首先,我们要理解索引的基本概念。在数据库中,索引类似于书籍的目录,它为数据提供快速访问的途径。...

    Oracle索引优化相关

    ### Oracle索引优化相关知识点详解 #### 一、基本索引概念 在Oracle数据库中,索引是提高数据检索速度的重要工具。通过查询`DBA_INDEXES`视图,可以获取到当前数据库中所有表的所有索引信息。需要注意的是,如果...

    Oracle索引分析与比较

    Oracle 索引是数据库管理系统中提升数据查询速度的关键组件,尤其在大型企业级应用中,选择合适的索引类型对于数据库性能至关重要。本篇文章将深入探讨Oracle中的B*Tree索引、反向索引、降序索引、位图索引和函数...

    oracle索引

    oracle的索引,非常适合初学者,介绍索引的分类,如何创建,修改等

    oracle 索引的原理

    oracle 索引的原理原理深入理解!

    oracle索引被限制的一些情况

    Oracle索引被限制的一些情况 Oracle索引是关系数据库管理系统中用于提高查询效率的一种机制,但是索引的使用也存在一些限制。本文将详细介绍一些常见的限制情况,帮助开发人员更好地使用索引,提高查询效率。 限制...

    oracle约束和索引笔记

    本笔记主要探讨了两个关键概念:约束和索引,这些都是Oracle数据库中的基础但至关重要的元素。 **1. 约束(Constraints)** 约束是Oracle数据库中用于确保数据完整性的规则。它们分为以下几种类型: - **非空约束...

    数据库 创建索引 sql oracle

    "数据库创建索引SQL Oracle" 数据库索引是数据库性能优化的重要手段之一。创建索引可以提高查询速度,降低数据库的负载,提高数据的安全性。本文将详细介绍数据库创建索引的原则、分类、创建方法、管理和优化等方面...

    oracle索引类型及扫描方式大整理new

    ### Oracle索引类型详解 #### 一、B\*Tree索引:数据检索的基石 在Oracle数据库中,B\*Tree索引是最常见的索引结构,也是默认创建的索引类型。它基于二叉树原理,由分支块(branch block)和叶块(leaf block)构成,...

    Oracle索引优化

    Oracle索引优化是数据库性能调优的关键环节,它关乎到数据检索速度和整体系统的效率。在Oracle数据库中,索引的种类繁多,包括B*Tree索引、反向索引、降序索引、位图索引和函数索引等。理解并正确使用这些索引类型...

Global site tag (gtag.js) - Google Analytics