mysql 高效的索引策略

1. 索引列独立使用,避免使用函数

例如 where to_char(xx,xx)=xx

2. 索引选择性尽量大一些

 索引选择性=不重复的索引值和总记录的比值,返回在0到1之间

尽量选择接近1的列建立索引,例如性别 sex不适合作为索引,因为它本身就只有两种可能性,索引选择性很低

3. 避免给很长的列建索引

1) 索引本身也需要占用空间

2) 列很长,查询的效率很低 

3) 可以使用前缀索引,取该列的前10或20个字符作为索引

扫描二维码关注公众号,回复: 9984468 查看本文章

4) 可以增加冗余列,使用crc32(xx)作为新的索引列

4.  联合索引 

1) 联合索引的使用,是从左侧字段开始

2) [A,B] 只有当A字段使用等值匹配时,B字段索引查询才会生效

3) [A,B] 单独使用B字段不会走索引

5. 给每个列都建立索引 是错误的做法

索引本身是有维护成本的

发布了210 篇原创文章 · 获赞 105 · 访问量 18万+

猜你喜欢

转载自blog.csdn.net/u010627840/article/details/104016514
今日推荐