`
hougbin
  • 浏览: 502465 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

oracle 索引

阅读更多

索引分类:

  • 唯一索引,作用是数据约束,保证数据唯一,还有就是数据索引,提高查询效率
  • 一般索引,只有数据索引的作用。


唯一索引:

Sql代码 复制代码
  1. create unique index idx_employee_empname on employee(empname);  
create unique index idx_employee_empname on employee(empname);


一般索引:

Sql代码 复制代码
  1. create index idx_employee_address on employee(address);   
  2. create unique index idx_employee_field1_field2 on employee(field1,field2);  
create index idx_employee_address on employee(address);
create unique index idx_employee_field1_field2 on employee(field1,field2);


函数索引:

Sql代码 复制代码
  1. create index idx_product_nvl_price on product(nvl(price,0.0));  
create index idx_product_nvl_price on product(nvl(price,0.0));


删除索引:

Sql代码 复制代码
  1. drop index idx_employee_empname;  
drop index idx_employee_empname;


指定索引表空间

Sql代码 复制代码
  1. create index idx_employee_address on employee(address) tablespace indexs;  
create index idx_employee_address on employee(address) tablespace indexs;


查看索引

Sql代码 复制代码
  1. select * from user_indexes where table_name = 'SHOP_PD'  
select * from user_indexes where table_name = 'SHOP_PD'


参考:
http://www.java2s.com/Tutorial/Oracle/0180__Index/Createindexwithtablespace.htm
http://hi.baidu.com/luodaijun/blog/item/2ea274f065c856aea50f5219.html

以下情况下索引会失效

  • 查询条件中字段使用顺序和组合索引定义中字段的顺序不一致时,索引无效oracle 10这种情况下索引已经起作用,低版本的不起作用
  • 使用!=,<>操作符会限制索引,换成 > or < 不会oracle 10这种情况下索引已经起作用,低版本的不起作用
  • 对索引列使用函数会忽略索引必要的情况下,可以建立函数索引
  • 试着对被SUM,MAX,MIN的列增加索引



有时候索引不起作用是因为oralce在使用基于成本的优化器(CBO),走索引的代价反而更加高,使得sql走全表扫描,可以如下使用强制索引语法,然后查看执行计划中的消耗

Sql代码 复制代码
  1. select /*+ index(t,IDX_AR_JDXX_SELL)*/t.province, t.city, t.country   
  2.   from ar_sell t   
  3.  group by t.type_code,t.province, t.city, t.country  
分享到:
评论
1 楼 doc_886 2011-05-25  
.

相关推荐

    ORACLE索引详解及SQL优化

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

    Oracle索引分析与比较

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

    Oracle索引机制分析

    总的来说,Oracle索引机制的深入理解对于数据库性能调优、查询优化和系统设计都具有重要意义。正确使用索引可以显著提高查询速度,降低响应时间,提升用户体验,但同时也需要平衡索引对写操作的影响,以确保系统的...

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

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

    oracle索引被限制的一些情况

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

    Oracle索引优化相关

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

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

    Oracle 索引是数据库管理系统中提升数据查询速度的关键技术。本文主要介绍Oracle数据库中不同类型的索引及其内部结构,以及各种索引的工作原理和适用场景。 首先,Oracle使用平衡树(B-Tree)作为其索引的基础结构...

    Oracle 索引

    Oracle索引是数据库管理系统中用于加速数据检索的关键结构。它们的工作原理类似于书籍的目录,允许数据库系统快速定位和访问特定的数据行,而无需扫描整个表。Oracle提供了多种类型的索引,包括B树索引、位图索引、...

    Oracle 索引 使用方法

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

    Oracle优化全攻略一【Oracle 索引概念】.docx

    总的来说,理解Oracle索引的工作原理并适当使用,是实现数据库高效运行的关键。正确选择和设计索引,避免使用限制索引的因素,能显著提高查询性能,减少数据库响应时间,从而提升整个系统的性能。在实践中,需要结合...

    oracle 索引的原理

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

    Oracle索引优化

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

    oracle索引与分区索引介绍

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

    oracle索引

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

    oracle索引,常见索引问题

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

    Oracle 索引练习语句程序

    ### Oracle索引的基本概念 #### 1. 创建索引 索引是数据库中一种用于提高数据检索速度的数据结构。通过创建索引,可以显著提升查询性能。例如,在`student`表上创建一个基于`sno`列的索引: ```sql CREATE INDEX ...

    ORACLE索引的认识

    ### ORACLE索引的认识 #### 一讲:索引并非总是最佳选择 索引作为数据库管理系统中的重要组成部分,在提升查询效率方面发挥着关键作用。然而,并非所有的查询场景都适合使用索引。在某些特定情况下,Oracle数据库...

    oracle索引的建立、修改、删除.doc

    Oracle 索引的建立、修改、删除 Oracle 索引是关系数据库中用于存放每一条记录的一种对象,主要目的是加快数据的读取速度和完整性检查。在数据库设计阶段与数据库结构时就要考虑。应用系统的性能直接与索引的建立...

Global site tag (gtag.js) - Google Analytics