一、索引的优点
1、索引可以大大减少服务器需要扫描的数据量
2、索引可以帮助服务器避免排序和临时表。
3、索引可以将随即I/O变为顺序I/O
二、索引策略
1、独立的列
独立的列是指索引列不能是表达式的一部分,也不能是函数参数。例如:
一个有500W条记录的表,id是主键。
所以要始终将索引列单独放在比较符号的一侧。
2、前缀索引和索引选择性
对于比较大的列,通常可以索引开始的部分字符,这样可以节约索引空间,提高索引率。但是也会降低索引的选择性。
索引的选择性是指,不重复的索引值(基数)和表的记录总数的比值,索引的选择性越高查询效率就越高,因为可以在查找时过滤掉更多的行,唯一索引的选择性是1,性能是最好的。
如何来选择一个合适的长度,让前缀的基数接近完整列的基数,一般我们有2中方法:
a、为了决定前缀的合适长度,需要找到最常见的值的列表,然后和最常见的前缀列表进行比较。
举例:有一张100W记录的表,要对name添加前缀索引
时间: 2024-12-02 05:59:01