查询优化——索引
数据库创建索引的优缺点
优点:大大加快数据的检索速度(主要)
创建唯一性索引,保证数据库每一行数据的唯一性
缺点:索引占物理空间
对表进行增删改的时候,索引也要动态维护,减低数据维护速度
创建索引
索引分类:普通索引、唯一性索引(unique)、全文索引(fulltext)、单列索引和单个多列索引(效果不同,查询时只能选择一条索引,选择限制条件最严格的那条)
1.直接创建索引
create index 索引名 on 表名(字段名(长度))
2.创表的时候指定索引
create table TEST( id int primary key,
name varchar(20),
index 索引名 (字段名(长度))
)
3.修改表结构
alter table 表名 add index 索引名(字段名)
查看使用索引的效果
explain+查询语句
例如:查询表kk,id=4时的所有内容
未建索引查询:explain select * from kk where id='4'; #此时rows=5
建立索引index_id
再查询一次:explain select * from kk where id='4'; #此时rows=1