語法:
create [索引型別] index 索引名稱
on 表名(列名)
with fillfactor = 填充因子值0~100
gouse 庫名
goif exists (select * from sysindexes where name='ix_test_tname')--檢測是否已經存在ix_test_tname索引
drop index test.ix_test_tname--如果存在則刪除
--建立索引
create nonclustered index ix_test_tname --建立乙個非聚集索引
on test(tname) --為test表的tname欄位建立索引
with fillfactor = 30 --填充因子為30%
goselect * from test(index = ix_test_tname) where tname = 'a' --指定按『ix_test_tname』索引查詢
總結:1.什麼是索引:資料庫中的索引是某個表中一列或多列值的集合和相應的指向表中物理標識這些值的資料頁的邏輯指標清單。
2.分類:
唯一索引(unique):不允許兩行具有相同的索引值(建立了唯一約束,系統將自動建立唯一索引)
主鍵索引:主鍵索引要求主鍵中的每個值是唯一的,(建立主鍵自動建立主鍵索引)
聚集索引(clustered):表中各行的物理順序與鍵值的邏輯(索引)順序相同,表中只能包含乙個聚集索引,主鍵列缺省為聚集索引
非聚集索引(nonclustered):表中各行的物理順序與鍵值的邏輯(索引)順序不匹配,表中可以有249個非聚集索引
3.建立索引的標準:用於頻繁搜尋的列;用於對資料進行排序的列
如何為資料庫建立索引
sql 2010 12 15 16 46 54 閱讀41 字型大小 大 中小訂閱 接著,來個稍微複雜一點的,如果有個order by字句呢?不管你信不信,大多數的資料庫在使用order by的時候,都將會從索引中受益。select from mytable where category id 1 a...
資料庫如何科學建立索引?
1 某些字段需要頻繁用作查詢條件時需要為它建立索引 這個應該都知道,什麼樣才是頻繁呢?綜合分析你執行的所有sql語句。最好將他們乙個個都列出來。然後分析,發現其中有些欄位在大部分的sql語句查詢時候都會用到,那麼就果斷為他建立索引。2 主鍵自動建立唯一索引 3 查詢中與其他表有關聯的字段,外來鍵關係...
oracle 資料庫如何建立索引 如何用索引
我現在有乙個sql語句 select faqid,faqname,type,creator,toquestion,supercode from t kbs faq t where type 1 and faqid faqid and faqname like faqname and creator ...