sql索引的作用


SQL 創建索引的作用

 

一、使用索引的優點:

  1、通過唯一性索引(unique)可確保數據的唯一性

  2、加快數據的檢索速度

  3、加快表之間的連接

  4、減少分組和排序時間

  5、使用優化隱藏器提高系統性能

 

二、使用索引的原則:

  1、在需要經常搜索的列上創建索引

  2、主鍵上創建索引

  3、經常用於連接的列上創建索引

  4、經常需要根據范圍進行搜索的列上創建索引

  5、經常需要排序的列上創建索引

  6、經常用於where子句的列上創建索引

 

三、不創建索引的原則:

  1、查詢很少使用和參考的列不建索引

  2、對只有少數值的列不建索引

  3、定義為text、image、bit的列不建索引

  4、當需要update性能遠遠高於select性能時不應建索引

 

四、常用的命令:

  1、sp_helpindex :報告表或視圖上的索引信息

  2、dbcc showcontig :顯示指定表的數據和索引的碎片信息

  3、dbcc dbreindex :重建指定數據庫中一個或多個索引

  4、dbcc indexdefrag :整理指定表或視圖的聚集索引或輔助索引的碎片

 

五、優化索引:

  1、重建索引(dbcc dbreindex)

  2、索引優化向導

  3、整理指定的表或視圖的聚集索引和輔助索引碎片(dbcc indexefrag)

 

如何創建索引

 

CREATE INDEX 語句用於在表中創建索引。

 

在不讀取整個表的情況下,索引使數據庫應用程序可以更快地查找數據。

索引

 

您可以在表中創建索引,以便更加快速高效地查詢數據。

 

用戶無法看到索引,它們只能被用來加速搜索/查詢。

 

注釋:更新一個包含索引的表需要比更新一個沒有索引的表更多的時間,這是由於索引本身也需要更新。因此,理想的做法是僅僅在常常被搜索的列(以及表)上面創建索引。

 

 

SQL CREATE INDEX 語法

 

在表上創建一個簡單的索引。允許使用重復的值:

 

CREATE INDEX index_name ON table_name (column_name)

注釋:"column_name" 規定需要索引的列。

 

 

SQL CREATE UNIQUE INDEX 語法

 

在表上創建一個唯一的索引。唯一的索引意味着兩個行不能擁有相同的索引值。

 

CREATE UNIQUE INDEX index_name ON table_name (column_name)

 

CREATE INDEX 實例

 

本例會創建一個簡單的索引,名為 "PersonIndex",在 Person 表的 LastName 列:

 

CREATE INDEX PersonIndex ON Person (LastName)

如果您希望以降序索引某個列中的值,您可以在列名稱之后添加保留字 DESC:

 

CREATE INDEX PersonIndex ON Person (LastName DESC)

假如您希望索引不止一個列,您可以在括號中列出這些列的名稱,用逗號隔開:

 

CREATE INDEX PersonIndex ON


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM