1. 索引作用
正常查询数据的时候,默认会从第一行数据查询到最后一行。所有数据量多的时候,查询很耗时,如果查询条件的列有索引,就可以不必遍历每一条数据,使得查询效率加快。
2. 创建索引
-- 建表语句中:
index 索引名(索引列)
-- 建表语句外:
create index 索引名 on 表名(索引列)
create table text(
id int primary key auto_increment,
name varvhar(20),
age int,
index age_index(age)
);
select * from text where age=18;
-- 查询的条件有age,查询的效率会变快
3. 查看索引
show index from 表名
- 表中的主键列和外键列和唯一列自动有索引
4. 删除索引
drop index 索引名 on 表名;
5. 联合索引
create index 索引名 on 表名(列1,列2……)
联合查询的时候效率会更高
where 列1 and 列2…
6. 索引的特性
- 对查询有增益,使查询速度加快
- 对增删改操作会有额外的索引维护的时间消耗
- 索引不是越多越好
- 对于修改较多的表,不适合做过多索引
- 对于查询较多的表,作为查询条件的列上做索引会提高效率
- 盲目建索引,不仅会增加大量的索引维护时间,而且也是对存储空间的严重消耗