索引
有哪几种索引?
常见的有唯一索引(可以值为空),主键索引(特殊的唯一索引,值不能为空),联合索引
如何设置索引,要注意什么
- 不要在频繁修改的字段创建索引
- 索引最好建立在频繁搜索的字段上
- 索引的数量不宜太多,索引本质是空间换时间
- 联合索引最好把区分度高的字段放左侧
什么时候不走索引
like语句,or语句 联合查询时最左侧字段不是索引字段 运算符+-,is not null 判空,!=,not in等逻辑判断语句 字段是字符串时,查询没有用括号括起来,导致隐式类型转换
为什么不用b树用b+树
b+树非叶子节点不存储数据,只存储指针和索引,能提升io效率 b+树的叶子节点在内存中是连续的,而b树是不连续的