概述
索引的选择性低,但数据的分布差异很大时,仍然可以利用索引提高效率。 A、数据分布不均匀的特殊情况下,选择性不高的索引也要创建。 表ServiceInfo中数据量很大,假设有一百万行,其中有一个字段DisposalCourseFlag,取范围为枚举:[0,1,2,3,4,5,6,7
索引的选择性低,但数据的值分布差异很大时,仍然可以利用索引提高效率。
A、数据分布不均匀的特殊情况下,选择性不高的索引也要创建。
表ServiceInfo中数据量很大,假设有一百万行,其中有一个字段DisposalCourseFlag,取值范围为枚举值:[0,1,2,3,4,5,6,7]。
按照前面说的索引建立的规则,“选择性不高的字段不应该建立索引”,
该字段只有8种取值,索引值的重复率很高,索引选择性明显很低,因此不建索引。
然而,由于该字段上数据值的分布情况非常特殊,具体如下表:
取值范围 占总数据量的百分比
1~5 1%
6 98%
7 1%
而且,常用的查询中,查询DisposalCourseFlag<6 的情况既多又频繁,毫无疑问,如果能够建立索引,并且被应用,
那么将大大提高这种情况的查询效率。因此,我们需要在该字段上建立索引。
http://www.php.cn/mysql-tutorials-118248.html
最后
以上就是魔幻鲜花为你收集整理的oracle 性能优化操作七:索引提高数据分布不均匀时查询效率的全部内容,希望文章能够帮你解决oracle 性能优化操作七:索引提高数据分布不均匀时查询效率所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复