最初由 junsansi 发布
[B]
我觉着索引是保存了列值及列所在rowid信息,同时排序~~~
如果表也只有1的列的话,那列存储的信息跟索引存储的信息就是一致的,怎么会有效率上的差异呢 [/B]
比如一张表存储:
1,2,3,4,5,6,7,8,9,10
我要查找2,如果对于表:
要全部把表扫描一遍,找到2.
而对于索引:
我可能首先把2定位在小于5上,这样搜索范围缩小一半,在把它定位到小于3上,搜索范围又小了一般,然后比较从1,2里面选出2来,你说那个快。
有一个猜数字游戏和这个非常一样,你一定知道:
比如你记住一个小于100的数字,我问你几次之后,我就可以才出这个数字。这个次数要远远小于我一个一个问你:
是不是1啊,是不是2啊,3啊.......
如果你建成索引表,就是你需要的结果。 |