美文网首页
【oracle】建立索引常用方法笔记整理

【oracle】建立索引常用方法笔记整理

作者: 蘑菇均 | 来源:发表于2019-05-06 21:08 被阅读0次
1.创建索引

create index <index_name> on <table_name>(<column_name>) [tablespace<tablespace_name>];
如:
简单索引:create index BOOK_INFO_INDEX_1 on BOOK_INFO(ISBN);
复合索引:create index BOOK_INFO_INDEX_1 on BOOK_INFO(COLUMN1,COLUMN2,COLUMN3);
复合索引使用需要注意的是,只有当column1字段作为查询条件之一时,该索引才会有效。与三者之间的顺序没有关系。
当然,并不是建立索引后,每次查询都会生效,一般情况下,只有当查询结果小于总数量的10%左右时,索引才会有效,否则是全表扫描。

2.重置索引

alter index <index_name> rebuild;

3.删除索引

drop index <index_name>;

4.强制使用索引

select /+INDEX(t <index_name>)/ t.* from <table_name> where t.column_name='';
如:
select /*+INDEX(t BOOK_INFO_INDEX_1 )*/ t.* from BOOK_INFO t where t.ISBN='201902';

5.通过查看sql执行计划,了解sql语句是否启用索引

方法一:在plsql中新建Command窗口,按下面的步骤执行
a.生成执行计划
explain plan for select * from BOOK_INFO where ISBN='123456';
备注:explain plan for后面为要生成执行计划的查询语句
b.查看执行计划结果
select * from table(dbms_xplan.display);
c.查看索引是否使用
index range scan为索引范围扫描,TABLE ACCESS FULL为全表扫描

方法二:在plsql中新建SQL窗口,在窗口中写入查询语句,然后按F5即可;

6.查看表索引信息

select * from user_indexes where table_name='BOOK_INFO' ;
select * from user_ind_columns where table_name ='BOOK_INFO' ;

7.查看表索引是否启用

--a、开启索引监控 alter index <INDEX_NAME> monitoring usage;
alter index BOOK_INFO_INDEX_1 monitoring usage;
--b、查看
select * from v$object_usage;
--c、关闭 alter index <INDEX_NAME> nomonitoring usage;
alter index BOOK_INFO_INDEX_1 nomonitoring usage;

相关文章

  • 【oracle】建立索引常用方法笔记整理

    1.创建索引 create index on ( ) [tablespace ];如:简单索引:create...

  • 学习MongoDB

    学习MongoDB @(存笔记) [TOC] 常用命令 windows下设置开机自动启动 索引 如何建立索引 对一...

  • Oracle索引知识学习笔记

    [TOC] 一、Oracle索引简介 在看《收获,不止SQL优化》一书,并根据书中例子进行实践,整理成笔记 1.1...

  • Oracle索引知识学习笔记

    @[toc] 一、Oracle索引简介 在看《收获,不止SQL优化》一书,并根据书中例子进行实践,整理成笔记 1....

  • 索引

    索引是什么 用来提高查询速度 ,但是影响更新速度。 建立索引的列是经常用到(查询) 建立索引的语句]

  • oracle之创建用户、表空间,用户授权及指定表空间

    参考链接 Oracle建立表空间和用户oracle创建删除表空间、用户、数据导入导出等常用sql语句 oracle...

  • 15

    1. 列举至少3个Mysql的具体优化? (1)适当的对表里的字段建立索引 索引是提高数据库性能的常用方法,它可以...

  • 小米和京东的4道关于Dubbo、Zookeeper等的面试题

    1. 列举至少3个Mysql的具体优化? (1)适当的对表里的字段建立索引 索引是提高数据库性能的常用方法,它可以...

  • influxdb - 概念

    tag与field区别 tag: 建立索引,不必须,常用作筛选条件field:不建立索引,必须,不推荐用作筛选条件...

  • linux快速切换目录

    建立索引 将常用的目录入栈pushd将常用的目录出栈popd

网友评论

      本文标题:【oracle】建立索引常用方法笔记整理

      本文链接:https://www.haomeiwen.com/subject/wakjoqtx.html