欢迎来到飞鸟慕鱼博客,开始您的技术之旅!
当前位置: 首页知识笔记正文

mysql 联合索引查询

墨初 知识笔记 258阅读

mysql-联合索引是什么?

MySQL-联合索引 一、什么是联合索引 两个或更多个列上的索引被称作联合索引,联合索引又叫复合索引。对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分。

mysql查询为什么要加索引?

对于查询占主要的应用来说,索引显得尤为重要。 很多时候性能问题很简单的就是因为我们忘了添加索引而造成的,或者说没有添加更为有效的索引导致。 如果不加 索引的话,那么查找任何哪怕只是一条特定的数据都会进行一次全表扫描,如果一张表的数据量很大而符合条件的结果又很少,那么不加索引会引起致命的性能下降。 但是也不是什么情况都非得建索引不可,比如性别可能就只有两个值,建索引不仅没什么优势,还会影响到更新速度,这被称为过度索引。 如果我们是在area和age上分别创建单个索引的话,由于mysql查询每次只能使用一个索引,所以虽然这样已经相对不做索引时全表扫描提高了很多效率,但是如果在area、age两列上创建复合索引的话将带来更高的效率。

什么是联合索引?

联合索引又叫复合索引。 每一个磁盘块在mysql中是一个页,页大小是固定的,mysql innodb的默认的页大小是16k,每个索引会分配在页上的数量是由字段的大小决定。 当字段值的长度越长,每一页上的数量就会越少,因此在一定数据量的情况下,索引的深度会越深,影响索引的查找效率。

mysql索引名index_name怎么选?

索引名index_name可选,缺省时,MySQL将根据第一个索引列赋一个名称。 另外,ALTER TABLE允许在单个语句中更改多个表,因此可以在同时创建多个索引。 CREATE INDEX可对表增加普通索引或UNIQUE索引。
声明:无特别说明,转载请标明本文来源!