時(shí)間:2015-06-28 00:00:00 來(lái)源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(0)
1.索引分類
a) 唯一索引,??? 作用是數(shù)據(jù)約束,保證數(shù)據(jù)唯一,還有就是數(shù)據(jù)索引,提高查詢效率
b)一般索引,只有數(shù)據(jù)索引的作用,
2.唯一索引的建立
create unique index 索引名 on??? 表名(字段名)
ok,假設(shè)有一個(gè)Emploeyy表,里面有一個(gè)empName字段,我們來(lái)為empName添加唯一索引
create unique index??? idx_empname on employee(empname);
3.一般索引
create index 索引名 on 表名(字段名)
ok,現(xiàn)在我們?yōu)閑mployee的address字段,添加一般索引
create index idx_address on employee(address);
我們還可以為兩多個(gè)字段建立索引
create unique index idx_test on employee(field1,field2);
這樣,為field1,field2添加了唯一索引,field1和field2的組合是唯一的了
還可以指定索引排序
create index idx_test??? employee(field1 ,field2 desc);;
4.函數(shù)索引
如果在我們的查詢條件使用了函數(shù),那么索引就不可用了。
可以用建立函數(shù)索引的方式,來(lái)解決這個(gè)問(wèn)題
例如:
select * from product where nvl(price,0.0)>1000.0 ;
這里,nvl(price,0.0)使用了函數(shù),索引不能利用price字段上做的索引了
ok,我們來(lái)創(chuàng)建函數(shù)索引
create index index_price on product(nvl(price,0.0));
5.索引的刪除
drop index 索引名
drop index idx_empname;
6.其它的
唯一索引能極大的提高查詢速度,而且還有唯一約束的作用
一般索引,只能提高30%左右的速度
經(jīng)常插入,修改,應(yīng)在查詢?cè)试S的情況下,盡量減少索引,因?yàn)樘砑铀饕?,插入,修改等操作,需要更多的時(shí)間
可以在order by的字段,where的條件字段,join的關(guān)聯(lián)字段添加索引
比如:
select * from table1?? t1
left join table2?? t2 on t1.字段A=t2.字段B
where t1.字段C = '值'
order by t1.字段D
這里,A,B,C,D字段,都應(yīng)該添加索引
關(guān)鍵詞標(biāo)簽:Oracle索引
相關(guān)閱讀
熱門文章 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索
人氣排行 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 ORACLE SQL 判斷字符串是否為數(shù)字的語(yǔ)句 ORACLE和SQL語(yǔ)法區(qū)別歸納(1) oracle grant 授權(quán)語(yǔ)句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法