哈喽,今天继续给大家分享数据库的知识——索引,是数据库用来提高性能的最常用的工具。给大家详细介绍一下:
设计索引的原则
索引的设计遵循一些已有原则,创建索引的时候尽量考虑符合这些原则,便于提升索引的使用效率,更高效的使用索引。
1、搜索的索引列,不一定是所要选择的列。最适合索引的列时出现在where子句中的列,或链接句中指定的列,而不是出现在SELECT关键字后的选择列表中的列。
2、使用唯一索引。考虑某列中的值得分布。索引的列的基数越大,索引的效果越好。
3、使用短索引。可以更高效读取数值。
4、不要过去索引,索引太多,也可能会使MYSQL选择不到所要使用的最好索引,只保持所需的索引有利于查询优化。
5、对于InnoDB存储引擎的表,会按照一定的顺序保存,所以主键要尽可能选择较短的数据类型,可以有效的减少索引的磁盘占用,提高索引的缓存效果。
MEMORY存储引擎的表可以选择使用BTREE或者HASH索引,两种不同类型的索引各有其不同的适用范围。
总结,索引用于快速找出在某个列中有一特定值的行。如果不使用索引。表越大,花费时间越多。如果表中查询的列有一索引,MYSQL能快速达到一个位置去搜索数据文件的中间,没有必要看所有数据。
关于什么情况下数据库会使用索引,以及什么情况数据库不会使用索引的详解介绍,大家也可以搜索相关文档。
领取专属 10元无门槛券
私享最新 技术干货