MySql高级技术-索引

索引

Posted by LQFGH on January 5, 2019

基本语法


查看某张表的索引

1
SHOW INDEX FROM employees;

创建

1
2
3
ALTER TABLE employees ADD INDEX inx_emp_nameEmail (last_name,email);

CREATE INDEX inx_emp_nameEmail ON employees(last_name,email);

删除

1
DROP INDEX inx_emp_nameEmail ON employees;

查看

1
SHOW INDEX FROM employees;

哪些情况需要建立索引


  1. 主键自动建立索引
  2. 频繁作为查询条件的字段需要建立索引
  3. 与其他表相互关联的字段
  4. 频繁更新的字段不适合建立索引,更新时还需要更新索引
  5. where条件里用不到的字段不建立索引
  6. 单值索引/组合索引选择。 高并发情况下倾向于建立组合索引
  7. 查询中排序的字段,通过索引可以大大提高访问速度
  8. 查询中统计或者分组字段

索引分析