oracle 索引的概念

2021-09-21 19:10:54 字數 927 閱讀 9152

索引的概念

官方定義:索引是建立在表的一列或多列上的輔助物件。可以加快對錶的訪問速率。

索引類似書的目錄。

《轉》索引的分類

邏輯上: 

single column 單行索引 

concatenated 多行索引 

unique 唯一索引 

nonunique 非唯一索引 

function-based函式索引 

domain 域索引

物理上: 

partitioned 分割槽索引 

nonpartitioned 非分割槽索引 

b-tree: 

normal 正常型b樹 

rever key 反轉型b樹 

bitmap 位圖索引

單行索引:

基於單個列所建立的索引

語法:  create index 索引名 on 表名(列名)

多行索引:

基於兩列或多列建立的索引,在一張表上可以有多個索引,但要求列的組合都不相同

例如:唯一索引:

當這一列資料中,任意兩行的值都不相同,可以建立唯一索引。

當建立 primary key 或者 unique constraint時 唯一索引都會被自動建立

語法: create unique index 索引名 on 表名(列名);

例如:非唯一索引

單行索引,多行索引,唯一索引,非唯一索引都屬於b*數索引,這種數索引適合索引dtp(動態)歡迎

索引兩大類,b*數索引和點陣圖索引

另外一種位圖索引適合大型靜態表倉庫環境

例如表中有很多重複的值,但很少去做改動時,適合建立位圖索引。

位圖索引以一種壓縮形式存放,因此占用空間較少。

語法:create bitmap index 索引名 on 表名(列1,列2…);

例如:

oracle索引基礎概念

原理 對錶中的某些列進行排序,那麼當查詢這些列時,就不需要全表查詢了,可在排序好的列中進行快速搜尋,比如二分法等。應用 在where子句中出現的列往往是需要建立索引的列。總結 1 提高查詢的效率 2 空間換時間,需要占用表空間tablespace,如果索引檔案特別大時,可考慮將索引放在另外的表空間中...

索引的概念

索引的目的是什麼?1.快速訪問資料表中的特定資訊,提高檢索速度 2.建立唯一性索引,保證資料庫表中每一行資料的唯一性。3.加速表和表之間的連線 4.使用分組和排序子句進行資料檢索時,可以顯著減少查詢中分組和排序的時間 索引的缺點 建立索引和維護索引需要耗費時間,這個時間隨著資料量的增加而增加 索引需...

Oracle之索引的概念 語法等示例講解

一 概念 索引是建立在資料庫表中的某些列的上面,是與表關聯的,可提供快速訪問資料方式,但會影響增刪改的效率 常用型別 按邏輯分類 單列索引和組合索引 唯一索引和非唯一索引。二 什麼時候需要建立索引 1 在經常需要搜尋 主鍵 連線的列上。2 表很大,記錄內容分布範圍很廣。3 在經常需要根據範圍進行搜尋...