00:00
那我们再聊聊这个组件primary key,嗯,那前面我也一直强调了,它只提供了什么一级索引,但不是什么唯一约束。不是唯一约束啊,说白了他可以重复呗,就像咱们之前的数据。我们是不是按按照ID建的那个组件的primary key,但是你看是不是可以重复啊,这个ID是不是有重复的对吧,它没有唯一约束,这个大家都明白了啊,那么你想想你怎么让组件发挥作用。你是不是得用到这个组件列才行啊,对吧,所以我们一般会把组件加在过滤条件里边,在where条件里边,那我们其实我们看原数句的时候啊,来你看这个啊,呃,建表语句我也不用去找so create table t order MT啊。你看这个其实就是把咱们那个搜Q文件曼data那个路径吗?还记得那个路径吗?啊,我就不去看了啊,你看那默认帮我们设了一个这个。
01:04
这个叫什么索引力度?力度索引的一个力度。8192这个是默认值,一般呢就不用去修改了,那它是什么意思呢?因为我们它用的是一个稀疏的,所以前面也给大家简单介绍了一下啊呃,它是这样。比如说我对这一列数据建了一个索引,那我们说了,常规来讲,你是不是得把所有的都建一个索引呢?或者咱们换个直白的例子啊。还是刚才那个例子,我现在的数据有,呃,ABCDEF吧。这是一列,我对它建索引,正常来讲,我们是不是对每一行都得记录一下A啊,然后它的地址在哪里,B地址在哪里,对吧?每一行都得见,但的稀疏索引不这样,它可能是什么?记录了一个A,然后再隔了几行再记录一个D,再隔几行再记录一个,那后面同样的肯定记录了A的位置,D的位置,F的位置对吧?那这个就是稀疏索引,那它的优点在哪?是不是数据量小啊?
02:12
索引的数据量小,那他怎么查呢?它类似一个二分查找,什么意思啊,比如说我要找C。那他是不是查这个索引表。根据字典顺序呢,我是不知道这个C是在A之后啊。是不是大于A。那同时它是不是小于D,这个时候它是不是就确定了一个范围是这一块大于A小于D。对吧,那在里边你再去找就好了,你看这这样的话,它是不用全部扫描一遍了,对吧,这就是一个新书索引啊,跳数索引嘛。其实没什么复杂的,对吧,特别简单,超简单,那同样看这个例子你也看得懂了,这是一列值,那我对它做一个稀疏的索引,那就是我记录了这个。
03:02
还记录了这个,还记录了这个。对吧。呃,那这一块呢。那这个值是什么意思啊?这个就是间隔嘛,我间隔多少记录一次,间隔多少记录一次,对吧,两个相邻索引对应数据的间隔。那你想想,如果这个值只有在一种情况你要改,就是大量的重复值的时候,你才要跳很多,不然为什么呢?比如说你是1111有一个一,然后二你的索引按你这么键的话,你是不是记录了一个一,然后一会又记录一个一,一会又记录一个一,那你想看你记录这个一有意义吗?你是不是所有全是一啊,那这个时候你这个力度就可以适当调大啊,大量重复的时候才需要啊,一般是大于它很多,你看它是不是接近1万,如果你的重复值达到了好几万,那你可以考虑把它调大到好几万。
04:08
停。这个就是一个组件啊,两两点啊,第一个它没有唯一约束,第二个它用的是吸收索引,要默认指定一个索引力度是8192啊,你不加它自动帮你加啊。
我来说两句