1.索引作用
在索引列上,除了上面提到的有序查詢之外,資料庫利用各種各樣的快速定位技術,能夠大大提高查詢效率。特別是當資料量非常大,查詢涉及多個表時,使用索引往往能使查詢速度加快成千上萬倍。
例如,有3個未索引的表t1、t2、t3,分別只包含列c1、c2、c3,每個表分別含有1000行資料組成,指為1~1000的數值,查詢對應值相等行的查詢如下所示。
select c1,c2,c3 from t1,t2,t3 where c1=c2 and c1=c3
此查詢結果應該為1000行,每行包含3個相等的值。在無索引的情況下處理此查詢,必須尋找3個表所有的組合,以便得出與where子句相配的那些行。而可能的組合數目為1000×1000×1000(十億),顯然查詢將會非常慢。
如果對每個表進行索引,就能極大地加速查詢程序。
2、對索引操作
建立索引:
create index index_c1 on t1 (c1);
刪除索引
drop index index_c3 on t3;
索引的使用
1.建立表 create table zztest id number not null,service tpyeid varchar2 22 totalprice number,constraint test pk primary key id 2.建立索引 create index testna...
索引的使用
主鍵是一種約束,唯一索引是一種索引,兩者在本質上是不同的。主鍵建立後一定包含乙個唯一性索引,唯一性索引並不一定就是主鍵。唯一性索引列允許空值,而主鍵列不允許為空值。主鍵列在建立時,已經預設為空值 唯一索引了。乙個表最多只能建立乙個主鍵,但可以建立多個唯一索引。主鍵更適合那些不容易更改的唯一標識,如自...
索引的使用
資料庫表的資訊是存在在檔案中的,每個檔案中有很多記錄,你新增一條記錄,檔案中就會多一條記錄。如果要查詢一條記錄怎麼查詢呢?你會開啟檔案讀取檔案內容,然後看看是不是你要的記錄,查詢任何記錄都要從前向後去比較。就像乙個房間有很多人,你知道要找的人在這個房間,但是具體在什麼位置你不知道,你只有乙個乙個看,...