对于引入一个新的事物,自然而然的就会有问号出现?
是什么?
能干啥?
那怎么用呢?
优缺点?
复制代码
注:我使用的是mysql5.7.24,以下都是针对这个版本。
下面我们就一个一个道来:
索引是对数据库表中一列或多列的值进行排序的一种结构。
索引是一种加快海量数据查询的关键技术。
复制代码
是不是很抽象?
那么大家想想我们小时候是怎么使用新华字典的?
对了,是不是先查目录,所以索引可以理解为书的目录。我们是不是可以按照拼音查,也可以按照部首查。
那么索引也是可以有多种的,接下来我们看看索引有哪些呢?
普通索引
唯一索引:索引列的值必须唯一,但允许有空值
主键索引:一种特殊的唯一索引,不允许有空值。主键索引可以作为外键,唯一索引不可以,并且每个表只能由一个主键索引。
全文索引:只可创建在BLOB、TEXT、VARCHAR、CHAR等特殊类型上。
***要注意的是Mysql全文索引中分词是英文分词,要想中文分词必须要有一些插件的支持。
组合索引:多个列组合成一个索引,组织索引遵循最左前缀原则
聚簇索引:索引顺序和物理存放顺序是一致的
非聚簇索引
覆盖索引:覆盖索引是建立在联合索引之上的
索引能使我们快速访问数据库表中的特定信息。复制代码