码迷,mamicode.com
首页 > 数据库 > 详细

MySQL学习(十五)

时间:2019-01-06 11:54:26      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:.com   http   分享   位置   image   增删改   mysql   添加   唯一索引   

索引的概念

索引是数据的目录,能快速定位数据的位置。索引提高了查询速度,降低了增删改的速度。并非加的越多越好。
一般在查询频率高的列上加,而且在重复度低的列上加效果更好。如在性别列上不用加索引,但是身份证号列上就可以加索引。
key 普通索引,就是为了加快查询速度。
unique key 唯一索引 加快速度并且约束数据。
primary key 主键索引
fulltext 全文索引

全文索引在中文情况下几乎无效。要分词+索引,一般用第三方解决方案,如sphinx

create table t16
(
    id int,
    name char(10),
    email char(20),
    primary key(id), #主键索引
    key name(name),
    unique key email(email)
);

索引长度:建索引时,可以只索引列的前一部分的内容,比如前10个字符
如 unique key email(email(10))

create table t17
(
    id int,
    name char(10),
    email char(20),
    primary key(id), #主键索引
    key name(name),
    unique key email(email(10))
);

多列索引

create table t18
(
    xing char(2),
    ming char(10), 
    key xm(xing,ming)
);

创建表,插入数据

mysql> insert into t18 values
    -> (‘朱‘,‘元璋‘);
Query OK, 1 row affected (0.52 sec)

技术分享图片
技术分享图片

上面两种情况下,索引都可以发挥作用。
技术分享图片

上面这种情况,索引没有发挥作用。
左前缀规则,索引可以发挥作用。

索引的操作

查看 show index from 表名
删除 alter table 表名 drop index 表名
或 drop index 索引名 on 表名
添加索引
alter table 表名 add [index/unique] 索引名(列名);
添加主键索引

MySQL学习(十五)

标签:.com   http   分享   位置   image   增删改   mysql   添加   唯一索引   

原文地址:https://www.cnblogs.com/Manual-Linux/p/10227594.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!