1.mysql的索引工作类似一本书的目录部分,想找某个特定主题,先查找书的目录部分,找到对应的页码
2.ORM工具只能生成基本的合法的查询
3.索引是在存储引擎层实现的,不是服务器层
4.B-tree就是指的...,从索引的根节点开始进行搜索
7.b树索引还可以用于order by和group by 操作
8.只有memory引擎显式支持哈希索引,只支持等值比较=查询速度非常快
9.在b树基础上创造伪哈希索引,自定义个哈希函数加个字段存储...;三星 索引中包含了全部查询列
11.扩展:增加个元数据信息表,例如"哪个用户的信息存储在哪个表中"
高性能的使用索引策略
1.独立的列
2.前缀索引和索引选择性; 每个列的前几个字符 和 不重复的索引对总记录数的比值...尽量让这个前缀的选择性和完整列的选择性接近,选择性越高越好,这样索引会小点
select count(distinct name)/count(*) as sel from test
3.多列索引...,注意是否出现索引合并现象
4.选择合适的索引列顺序
选择性高的字段放在前面
5.聚簇索引,innodb支持
6.覆盖索引,不需要回表