zoukankan      html  css  js  c++  java
  • 九、索引(需大量数据进行实践练习)

    聚集索引:数据行的物理地址顺序与列值(一般是主键的那一列)的逻辑顺序相同,一个表中只能拥有一个聚集索引

    非聚集索引:该索引中索引的逻辑顺序与磁盘上行的物理存储顺序不同,一个表中可以拥有多个非聚集索引。(非聚集索引就像新华字典的偏旁字典,他结构顺序与实际存放顺序不一定一致)

    索引在MySQL中也叫做“键”或者"key"(primary key,unique key,还有一个index key),是存储引擎用于快速找到记录的一种数据结构。索引对于良好的性能非常关键,尤其是当表中的数据量越来越大时,索引对于性能的影响愈发重要,减少io次数,加速查询。(其中primary key和unique key,除了有加速查询的效果之外,还有约束的效果,primary key 不为空且唯一,unique key 唯一,而index key只有加速查询的效果,没有约束效果
    ​ 索引优化应该是对查询性能优化最有效的手段了。索引能够轻易将查询性能提高好几个数量级。
    ​ 索引相当于字典的音序表,如果要查某个字,如果不使用音序表,则需要从几百页中逐页去查。

    ​ 强调:一旦为表创建了索引,以后的查询最好先查索引,再根据索引定位的结果去找数据

    通常,我们会在每个表中都建立一个ID列,以区分每条数据,并且这个ID列是自动增大的,如果我们将这个列设为主键,SQL SERVER会将此列默认为聚集索引.

    聚集索引的优势是很明显的,而每个表中只能有一个聚集索引的规则,这使得聚集索引变得更加珍贵。

    从我们前面谈到的聚集索引的定义我们可以看出,使用聚集索引的最大好处就是能够根据查询要求,迅速缩小查询范围,避免全表扫描。在实际应用中,因为ID号是自动生成的,我们并不知道每条记录的ID号,所以我们很难在实践中用ID号来进行查询。这就使让ID号这个主键作为聚集索引成为一种资源浪费。其次,让每个ID号都不同的字段作为聚集索引也不符合“大数目的不同值情况下不应建立聚合索引”规则;当然,这种情况只是针对用户经常修改记录内容,特别是索引项的时候会负作用,但对于查询速度并没有影响。

    1、添加主键索引:

    创建的时候添加: 添加索引的时候要注意,给字段里面数据大小比较小的字段添加,给字段里面的数据区分度高的字段添加. 聚集索引的添加方式 创建的是添加

    Create table t1( Id int primary key, ) Create table t1( Id int, Primary key(id) )

    表创建完了之后添加 Alter table 表名 add primary key(id)

    删除主键索引: Alter table 表名 drop primary key;

     

     

    2、唯一索引: Create table t1( Id int unique, ) Create table t1( Id int, Unique key uni_name (id) )

    表创建好之后添加唯一索引: alter table s1 add unique key u_name(id);

    删除: Alter table s1 drop index u_name;

     

    3、普通索引: 创建: Create table t1( Id int, Index index_name(id) )

    Alter table s1 add index index_name(id);

    Create index index_name on s1(id);

    删除: Alter table s1 drop index u_name; DROP INDEX 索引名 ON 表名字;

  • 相关阅读:
    在MAC系统的eclipse里打开android sdk manager
    在MAC上搭建eclipse+android开发环境以及eclipse的svn插件的安装
    C语言入门
    变量和数据类型
    兼容 FF&IE 的替换鼠标选择文字方法(转载)
    JavaScript 中在光标处插入添加文本标签节点 详细方法
    jquery获取鼠标位置
    转:javascript Range对象跨浏览器常用操作
    日省三思
    jQuery强大的jQuery选择器 (详解)[转]
  • 原文地址:https://www.cnblogs.com/soberkkk/p/12573973.html
Copyright © 2011-2022 走看看