索引何时失效

本文探讨了索引在数据库查询性能提升中的作用,并列举了几种常见的索引失效原因,包括使用函数、数据类型不匹配及使用ISNULL等。同时,文章还提出了在哪些场景下应该考虑使用索引。
索引是一个可以提高查询性能的工具,但是很多情况下由于程序员的低级错误,引起索引失效,失效原因主要是以下几种:

①where子句中使用函数,除非建立函数索引不会引起索引失效。
②不匹配的数据类型,oracle的隐士转换将会引起索引失效。
③where子句中使用了IS NULL或者IS NOT NULL,可以创建位图索引来解决这个问题,但是位图索引比较适合基数很少的列,也就是说列中的重复值比较多,例如对于身份证的这些列重复值几乎没有。

什么情况下使用索引:
①列经常被用于where条件中。
②列中有大量的空值。
③数据量很大,只有2-4%的数据被选出来。
④表几乎不被修改


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26101098/viewspace-709841/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/26101098/viewspace-709841/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值