索引

索引原理

创建索引会在磁盘中创建一颗平衡树,一个表数据假设有一个亿条数据,没有索引最多需要检索一亿次,如果创建了索引,只需要20次左右。故查询速度明显加快

而每次的更新都有可能让这棵树的接口发生很大的调整,故表中增加了索引会导致更新数据变慢,而且耗费cup等资源和内存空间。

 

 

例子

主键是聚集索引,如果表中创建了主键 磁盘上的存储结构会由一张表变成树形。假设表t_user的主键是id, name+age联合作为索引

如果 select * from t_user where name = 'jason' and age = 23; 

1. 先通过非聚集索的树引查出聚集索引(主键)

2. 通过主键的树查询出数据

 

 

如果 select age from t_user where name = 'jason'; 

只需要查询一次非聚集索引即可

 

SQL

--create index
create index indx_bind_sn on T_Sim_Bind_Info(PRE_BIND_SN,CREATE_TIME); 



--drop
drop index indx_bind_sn


--explain
explain plan for select * from T_Sim_Bind_Info where PRE_BIND_SN = 'KD7800A73688' and create_time > to_date('2013-8-23','YYYY-MM-DD') and create_time < to_date('2021-8-23','YYYY-MM-DD');
select * from table(dbms_xplan.display);

参考:http://t.csdn.cn/1CxT4

posted on 2021-06-29 13:59  周公  阅读(25)  评论(0编辑  收藏  举报

导航