一.数据字段建立索引优化查询速度。
优点:
1.根据索引列直接定位到匹配数据行,不需要着一匹配。
2.多表查询时,索引字段的关联会大大提高查询效率。
3.索引被用于提高WHERE条件的数据行匹配或者执行联结操作时匹配其它表的数据行的搜索速度。
4.对于使用了MIN()或MAX()函数的查询,索引数据列中最小或最大值可以很快地找到,不用检查每个数据行。
5.MySQL利用索引来快速地执行ORDER BY和GROUP BY语句的排序和分组操作。
缺点:
1.索引要占用磁盘空间。通常情况下,这个问题不是很突出。但是,如果你创建每一种可能列组合的索引,索引文件体积的增长速度将远远超过数据文件。如果你有一个很大的表,索引文件的大小可能达到操作系统允许的最大文件限制。
2.对于需要写入数据的操作,比如DELETE、UPDATE以及INSERT操作,索引会降低它们的速度。这是因为MySQL不仅要把改动数据写入数据文件,而且它还要把这些改动写入索引文件。
注意:
1.建立索引列,数据长度越短越好。
2.索引列避免NULL值的出现。
优点:
1.根据索引列直接定位到匹配数据行,不需要着一匹配。
2.多表查询时,索引字段的关联会大大提高查询效率。
3.索引被用于提高WHERE条件的数据行匹配或者执行联结操作时匹配其它表的数据行的搜索速度。
4.对于使用了MIN()或MAX()函数的查询,索引数据列中最小或最大值可以很快地找到,不用检查每个数据行。
5.MySQL利用索引来快速地执行ORDER BY和GROUP BY语句的排序和分组操作。
缺点:
1.索引要占用磁盘空间。通常情况下,这个问题不是很突出。但是,如果你创建每一种可能列组合的索引,索引文件体积的增长速度将远远超过数据文件。如果你有一个很大的表,索引文件的大小可能达到操作系统允许的最大文件限制。
2.对于需要写入数据的操作,比如DELETE、UPDATE以及INSERT操作,索引会降低它们的速度。这是因为MySQL不仅要把改动数据写入数据文件,而且它还要把这些改动写入索引文件。
注意:
1.建立索引列,数据长度越短越好。
2.索引列避免NULL值的出现。