索引

--索引的概念:索引就是在表的列上构建一个二叉树

--达到提升查询效率的目的,但是索引会影响增删改的效率(要重新构建二叉树)

--单列索引

CREATE INDEX myIndex ON account(name,money);

触发规则:条件必须是索引列的原始值,单行函数,模糊查询都不会触发

例:索引列为name

  SELECT * FROM emp WHERE name='empName'-->触发

 

--复合索引

  CREATE INDEX myIndex1 ON account(name,money);

  SELECT * FROM emp WHERE name='empName'-->触发单列索引

  SELECT * FROM emp WHERE name='empName' AND money=100-->触发复合索引(在MySQL测试走的还是单列索引,只不过possible_keys中包含这两个索引)

不管是单列索引还是多列索引,如果条件中包含or,或者索引列使用了模糊查询,都不会触发索引

posted @ 2020-03-20 11:37  荒野猛兽  阅读(125)  评论(0编辑  收藏  举报