INDEX 學習筆記

li__hl8888發表於2016-05-19

1>INDEX型別:


%7 ,%40(有順序的表)


1>B* index

0>heap table :


1>IOT

create table a(field1 number, field2 number)

organization index


2>CLUSTER INDEX

create cluster emp_dept_cluster

(deptno number(2) size 1024

create index emp_dept_idx on cluster emp_dept_cluster

create table dept(depno number primary key,dname,varchar2(14),loc varchar2(13))

cluster emp_dept_cluster(deptno)

create table emp(empno number ,emp_name varchar2(14),deptno number(2) references dept(deptno))

cluster emp_dept_cluster(deptno)


3>REVERSE KEY INDEX

4>DESCENDING  INDEX


1>Bitmap index

低差異係數,少修改。

2>Bitmap join index

create bitmap index emp_bm_index

on emp(d.dname) from emp e, dept d where e.deptno=d.deptno


3>applycation domain index

4>function-based index

心得:

可以對一個表部分資料行索引:

create index b_idx(case when field1 'N' then 'N'  end);

create index c_idx(case when status='ACTIVE' then name end);


2>為何沒有使用我的索引:


1>CBO

2>條件使用了函式

3>隱式轉換

4>count(*)

5>CBO 透過耗用時間和IO次數來判定。

6>有一段時間沒有分析某個表了。

7〉表中的兩個列進行比較的情況。。

8〉not in,not exist,column<>value,column>value或column<value

9>使用了single-row function 時,如nvl,to_char,lower

example: select ename, nvl(comm,0) from emp;
  

3>複合索引的,索引欄位的順序思考 :


create index on table1(a,b)  or create index on table(b,a)

or create index on table1(a,b) compress 2;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8568259/viewspace-2102982/,如需轉載,請註明出處,否則將追究法律責任。