SQL 創(chuàng)建索引的作用以及如何創(chuàng)建索引
SQL 創(chuàng)建索引的作用
一、使用索引的優(yōu)點:
1、通過唯一性索引(unique)可確保數(shù)據(jù)的唯一性
2、加快數(shù)據(jù)的檢索速度
3、加快表之間的連接
4、減少分組和排序時間
5、使用優(yōu)化隱藏器提高系統(tǒng)性能
二、使用索引的原則:
1、在需要經(jīng)常搜索的列上創(chuàng)建索引
2、主鍵上創(chuàng)建索引
3、經(jīng)常用于連接的列上創(chuàng)建索引
4、經(jīng)常需要根據(jù)范圍進行搜索的列上創(chuàng)建索引
5、經(jīng)常需要排序的列上創(chuàng)建索引
6、經(jīng)常用于where子句的列上創(chuàng)建索引
三、不創(chuàng)建索引的原則:
1、查詢很少使用和參考的列不建索引
2、對只有少數(shù)值的列不建索引
3、定義為text、image、bit的列不建索引
4、當需要update性能遠遠高于select性能時不應建索引
四、常用的命令:
1、sp_helpindex :報告表或視圖上的索引信息
2、dbcc showcontig :顯示指定表的數(shù)據(jù)和索引的碎片信息
3、dbcc dbreindex :重建指定數(shù)據(jù)庫中一個或多個索引
4、dbcc indexdefrag :整理指定表或視圖的聚集索引或輔助索引的碎片
五、優(yōu)化索引:
1、重建索引(dbcc dbreindex)
2、索引優(yōu)化向?qū)?br /> 3、整理指定的表或視圖的聚集索引和輔助索引碎片(dbcc indexefrag)
如何創(chuàng)建索引
CREATE INDEX 語句用于在表中創(chuàng)建索引。
在不讀取整個表的情況下,索引使數(shù)據(jù)庫應用程序可以更快地查找數(shù)據(jù)。
索引
您可以在表中創(chuàng)建索引,以便更加快速高效地查詢數(shù)據(jù)。
用戶無法看到索引,它們只能被用來加速搜索/查詢。
注釋:更新一個包含索引的表需要比更新一個沒有索引的表更多的時間,這是由于索引本身也需要更新。因此,理想的做法是僅僅在常常被搜索的列(以及表)上面創(chuàng)建索引。
SQL CREATE INDEX 語法
在表上創(chuàng)建一個簡單的索引。允許使用重復的值:
CREATE INDEX index_name ON table_name (column_name)
注釋:"column_name" 規(guī)定需要索引的列。
SQL CREATE UNIQUE INDEX 語法
在表上創(chuàng)建一個唯一的索引。唯一的索引意味著兩個行不能擁有相同的索引值。
CREATE UNIQUE INDEX index_name ON table_name (column_name)
CREATE INDEX 實例
本例會創(chuàng)建一個簡單的索引,名為 "PersonIndex",在 Person 表的 LastName 列:
CREATE INDEX PersonIndex ON Person (LastName)
如果您希望以降序索引某個列中的值,您可以在列名稱之后添加保留字 DESC:
CREATE INDEX PersonIndex ON Person (LastName DESC)
假如您希望索引不止一個列,您可以在括號中列出這些列的名稱,用逗號隔開:
CREATE INDEX PersonIndex ON Person (LastName, FirstName)
SQL 創(chuàng)建索引的作用
一、使用索引的優(yōu)點:
1、通過唯一性索引(unique)可確保數(shù)據(jù)的唯一性
2、加快數(shù)據(jù)的檢索速度
3、加快表之間的連接
4、減少分組和排序時間
5、使用優(yōu)化隱藏器提高系統(tǒng)性能
二、使用索引的原則:
1、在需要經(jīng)常搜索的列上創(chuàng)建索引
2、主鍵上創(chuàng)建索引
3、經(jīng)常用于連接的列上創(chuàng)建索引
4、經(jīng)常需要根據(jù)范圍進行搜索的列上創(chuàng)建索引
5、經(jīng)常需要排序的列上創(chuàng)建索引
6、經(jīng)常用于where子句的列上創(chuàng)建索引
三、不創(chuàng)建索引的原則:
1、查詢很少使用和參考的列不建索引
2、對只有少數(shù)值的列不建索引
3、定義為text、image、bit的列不建索引
4、當需要update性能遠遠高于select性能時不應建索引
四、常用的命令:
1、sp_helpindex :報告表或視圖上的索引信息
2、dbcc showcontig :顯示指定表的數(shù)據(jù)和索引的碎片信息
3、dbcc dbreindex :重建指定數(shù)據(jù)庫中一個或多個索引
4、dbcc indexdefrag :整理指定表或視圖的聚集索引或輔助索引的碎片
五、優(yōu)化索引:
1、重建索引(dbcc dbreindex)
2、索引優(yōu)化向?qū)?br /> 3、整理指定的表或視圖的聚集索引和輔助索引碎片(dbcc indexefrag)
如何創(chuàng)建索引
CREATE INDEX 語句用于在表中創(chuàng)建索引。
在不讀取整個表的情況下,索引使數(shù)據(jù)庫應用程序可以更快地查找數(shù)據(jù)。
索引
您可以在表中創(chuàng)建索引,以便更加快速高效地查詢數(shù)據(jù)。
用戶無法看到索引,它們只能被用來加速搜索/查詢。
注釋:更新一個包含索引的表需要比更新一個沒有索引的表更多的時間,這是由于索引本身也需要更新。因此,理想的做法是僅僅在常常被搜索的列(以及表)上面創(chuàng)建索引。
SQL CREATE INDEX 語法
在表上創(chuàng)建一個簡單的索引。允許使用重復的值:
CREATE INDEX index_name ON table_name (column_name)
注釋:"column_name" 規(guī)定需要索引的列。
SQL CREATE UNIQUE INDEX 語法
在表上創(chuàng)建一個唯一的索引。唯一的索引意味著兩個行不能擁有相同的索引值。
CREATE UNIQUE INDEX index_name ON table_name (column_name)
CREATE INDEX 實例
本例會創(chuàng)建一個簡單的索引,名為 "PersonIndex",在 Person 表的 LastName 列:
CREATE INDEX PersonIndex ON Person (LastName)
如果您希望以降序索引某個列中的值,您可以在列名稱之后添加保留字 DESC:
CREATE INDEX PersonIndex ON Person (LastName DESC)
假如您希望索引不止一個列,您可以在括號中列出這些列的名稱,用逗號隔開:
CREATE INDEX PersonIndex ON Person (LastName, FirstName)
樂發(fā)網(wǎng)超市批發(fā)網(wǎng)提供超市貨源信息,超市采購進貨渠道。超市進貨網(wǎng)提供成都食品批發(fā),日用百貨批發(fā)信息、微信淘寶網(wǎng)店超市采購信息和超市加盟信息.打造國內(nèi)超市采購商與批發(fā)市場供應廠商搭建網(wǎng)上批發(fā)市場平臺,是全國批發(fā)市場行業(yè)中電子商務權(quán)威性網(wǎng)站。
本文內(nèi)容整合網(wǎng)站:百度百科、知乎、淘寶平臺規(guī)則