索引的介绍:
索引在MySQL中也叫做’键’,他是一个特殊的文件,他保存着数据表中所有记录的位置信息,通俗的来说,数据库索引就好比一本书前面的目录,能加快数据库的查询速度
索引的使用:
查看表中已有的索引:show index from 表名;
说明:主键列会自动创建索引
索引的创建:
索引创建的索引格式:alter table 表名 add index 索引名[可选] (列名,…)
给name字段添加索引:alter table classes add index my_name (name);
说明:索引名不指定,默认使用字段名
索引的删除:
删除索引的语法格式: alter table 表名 drop index 索引名
如果不知道索引名,可以查看床表sql语句 show create table classes;
alter table classes drop index my_name;
联合索引:
联合索引又叫复合索引,即一个索引覆盖表中两个或多个字段,一般用在多个字段一起查询的时候
例:alter table teacher add index (name,age)
联合索引的最左原则
使用联合索引的时候,我们要遵循一个最左原则,即index(name,age)支持name , name和age组合查询
而不支持单独age查询,因为没有用到创建的联合索引
小结:
索引是加快数据库的查询速度的一种手段
创建索引使用: alter table 表名 add index 索引名[可选] (字段名, xxx);
删除索引使用: alter table 表名 drop index 索引名;
注意:
- 经常进行增删改的数据表不建议创建索引
- 数据量小的数据库没必要创建索引