什麼是索引?

來源:互聯網
上載者:User
--INDEX
什麼是索引?
1、一種用於提升查詢效率的資料庫物件;2、通過快速定位元據的方法,減少磁碟I/O操作;3、索引資訊與表獨立存放;4、oracle資料庫自動使用和維護索引
索引分類:
唯一索引;非唯一索引;
建立索引的兩種方式
自動建立 在定義主鍵或唯一鍵約束時系統會自動在相應的欄位上建立唯一性索引。
手動建立
使用者可以在其它列上建立非唯一的索引,以加速查詢。

索引的優缺點
建立索引的優點
1、大大加速資料的檢索速度;2、建立唯一性索引,保證資料庫表中每一行資料的唯一性;3、加速表和表之間的串連;4、在使用分組和排序子句進行資料檢索時,可以顯著減少查詢中分組和排序的是假。
索引的缺點
1、索引需要佔物理空間;2、當對錶中的資料進行增加、刪除和修改的時候,索引也要動態維護,降低了資料的維護速度。
建立索引的原則
建立索引:建立索引一般有以下兩個目的:維護被索引列的唯一性和提供快速存取表中資料的策略。1、在select操作佔大部分的表上建立索引;2、在where子句中出現最頻繁的列上建立索引;3、在選擇性高的列上建立索引(補充索引選擇性,最高是1,eg:primary key)4、符合索引的主列應該是最有選擇性的和where限定條件最常用的列,並以此類推第二列。。。。5、小於5M的表,最好不要使用索引來查詢,表越小,越適合用全表掃描。

使用索引的原則:
1、查詢結果是所有資料行的5%以下時,使用index查詢效果最好;2、where條件中經常用到表的多列時,使用複合索引效果會好於幾個單列索引。因為當SQL   語句所查詢的列,全部都出現在符合索引中時,此時由於oracle只需要查詢索引塊即可   獲得所有資料,當然比使用多個單列索引要快得多;3、使--查詢現有的索引SELECT * FROM USER_INDEXES;
--可獲知索引建立在那些欄位上SELECT * FROM USER_IND_COLUMNS;

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.