`
qudedong28
  • 浏览: 18468 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类

索引的创建和使用

阅读更多
1.创建索引实际上也是个排序的过程,在索引的列上进行排序之后,以平衡树结构自左向右将索引信息保存在磁盘上。

2.索引包括列索引,函数索引和复合索引。
列索引:create index idx_col on tbl1(col1)
函数索引:create index idx_fn on tbl1(upper(col1))
复合索引:create index idx_com on tbl1(col1,col2)

注:复合索引的列顺序很重要,一般最常用的列放在最前面

3.索引扫描方式
A.index range scan
B.index full scan
C.index fast full scan(自左向右有序扫描,而index full scan是无序扫描)
D.index skip scan

4.强制利用索引查询的SQL:hint
select /*+ index(table_name index_name) */ * 
from table_name
where ...

注:以注释的方式启用索引,即使语法有错误,也不会影响查询

5.利用索引主要是为了提高查询效率,但是也不是绝对的
当查询的数据占总数据的比重小的时候,利用索引会提高查询效率
当查询的数据占总数据的比重很大的时候,利用索引反而会降低效率
另外,有索引虽然会提高查询效率,但同时会降低数据变更的效率,
因为在变更数据的同时,要维护索引信息(即还要变更索引信息)。

6.索引列上不能用表达式(包括函数),否则索引实效。除非创建了函数索引。
分享到:
评论

相关推荐

    视图和索引的创建和使用实验报告.pdf

    本实验报告主要介绍了视图的创建、修改、使用和索引的创建、使用等知识点。 视图的创建 视图的创建可以使用 CREATE VIEW 语句,例如创建一个信息系学生基本情况视图 V_IS: CREATE VIEW V_IS AS SELECT * FROM ...

    视图和索引的创建及使用

    ### 数据库视图和索引的创建与使用详解 #### 实验目标概览 本次实验旨在深入了解数据库中的视图和索引概念,并掌握其在实际应用中的创建与使用技巧。通过理论结合实践的方式,使学习者能够理解视图与索引的作用机制...

    基于SQL Server数据库索引的创建与优化分析.pdf

    本文首先介绍了索引的相关概念和分类,然后以SQL Server的样本数据库(Northwind)为例,创建和使用聚簇索引和非聚簇索引,最后得出了索引创建和使用过程中的若干结论,旨在为SQL Server数据库索引创建和优化工作方面...

    MySQL数据库:使用NAVICAT工具创建和管理索引.pptx

    在MySQL中,索引的管理和创建是数据库性能优化的重要环节。NAVICAT是一款强大的数据库管理工具,支持多种数据库系统,包括MySQL,提供了一个直观的图形用户界面,使得数据库操作变得更为简单。 **创建索引** 1. **...

    数据库 创建索引 sql oracle

    创建索引可以使用 Enterprise Manager、Transact-SQL 语句和索引优化向导等方法。 * 用 Enterprise Manager 创建索引:选择创建索引的表并进入管理索引对话框,新建索引、编辑索引、删除索引等操作。 * 用 Transact...

    MySQL数据库:创建索引.pptx

    使用CREATE INDEX语句可以在一个已有表上创建索引,一个表可以创建多个索引。 语法格式: CREATE [UNIQUE | FULLTEXT] INDEX 索引名 ON 表名(列名[(长度)] [ASC | DESC],...) 说明: UNIQUE:表示创建的是唯一性索引 ...

    oracle在线创建索引和重组索引

    Oracle 在线创建索引和重组索引 Oracle 在线创建索引和重组索引是数据库管理员经常需要处理的问题。在线创建索引可以提高查询性能,而重组索引可以减少索引的碎片化和空间浪费。下面我们将详细介绍在线创建索引和...

    SQLServer视图及索引的创建及使用

    资源名称:SQL Server 视图及索引的创建及使用内容简介: 本文档主要讲述的是SQL Server 视图及索引的创建及使用;目的是通过企业管理器和Transact_SQL语句对视图进行创建、修改和删除通过企业管理器。希望本文档会给...

    oracle创建表创建唯一索引

    在Oracle数据库管理系统中,创建表和唯一索引是数据库设计中的关键步骤,它们对于数据的组织、查询效率和数据完整性至关重要。以下将详细介绍如何创建学员信息表,创建唯一索引,以及如何修改表来添加主键和检查约束...

    mysql实验报告+-+索引的创建与管理

    实验的目的是理解和熟练掌握索引的创建、管理和维护,包括单列索引、多列索引、唯一性索引以及全文索引的使用。通过这些操作,可以提高数据库查询的效率,优化数据访问性能。同时,了解不同存储引擎对索引的支持情况...

    MySQL索引的创建与使用

    本文来自于csdn,本文主要通过示例介绍MySQL中的单列索引、组合索引的创建与使用,希望对您的学习有所帮助。索引有很多,且按不同的分类方式,又有很多种分类。不同的数据库,对索引的支持情况也不尽相同。索引的...

    数据库索引创建建议

    ### 数据库索引创建建议 #### 一、深入理解索引结构 索引在数据库管理中扮演着极其重要的角色,特别是在处理大量数据时。合理的索引设计能够显著提高查询性能,减少系统的响应时间。本文主要探讨数据库中的两种...

    创建索引和调优索引

    《创建索引和调优索引:SQL Server 2005中的索引管理》 在SQL Server 2005中,索引是数据库管理的关键要素,它们极大地提升了数据检索速度,尤其是在处理大规模数据时。索引可以分为多种类型,包括聚集索引和非聚集...

    索引和视图的创建和修改

    - **使用SQL语句创建索引**: - **非唯一非聚集索引**: ```sql CREATE INDEX index_name ON table_name (column_name); ``` - **唯一非聚集索引**: ```sql CREATE UNIQUE INDEX index_name ON table_name ...

    oracle 索引创建

    通过对Oracle索引创建的理解和掌握,我们可以有效地提升数据库查询性能,特别是在处理大规模数据集时。正确地创建和维护索引不仅能够显著加快查询速度,还能帮助优化整体数据库性能。希望本文能够为大家提供一定的...

    文件索引的创建 文件索引的创建 文件索引的创建

    总的来说,文件索引的创建是提升系统性能的重要手段,通过合理地设计和管理索引,可以显著加快数据的读取速度,从而优化整体的用户体验。在实际应用中,需要根据具体的业务场景和数据特性,选择最合适的索引策略,并...

    MySql练习4:创建学生表和成绩表索引并查看索引.zip

    本练习主要涵盖了如何在学生表和成绩表中创建索引以及如何查看这些索引的详细信息。下面我们将深入探讨相关知识点。 1. **索引的概念**: 索引类似于书籍的目录,它为数据库中的数据提供快速访问的途径。当我们在...

    postgresql和oracle创建空间索引

    在PostgreSQL和Oracle中,虽然空间索引的创建通常通过SQL命令完成,但有时可能需要查看源码以了解底层实现,或者使用专门的空间数据管理工具,如QGIS、ArcGIS或Oracle SQL Developer,来辅助管理和操作空间数据。...

    Lucene3.0创建索引

    - 索引创建过程中可能会遇到各种异常,应添加适当的错误处理机制。 - 对于大量文档,可能需要考虑分批处理以避免内存溢出等问题。 通过以上步骤,我们可以有效地使用Lucene3.0来创建索引,从而提高文本数据的检索...

    oracle 索引创建.ppt

    在“湖南电信Oracle培训之索引创建.ppt”中,我们可推断出讨论的重点是如何在Oracle数据库中创建和理解索引的内部结构。 首先,索引分为几种主要类型,包括B树索引、位图索引、函数索引和全局唯一索引等。B树索引是...

Global site tag (gtag.js) - Google Analytics