大橙子网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

MySQL索引分类中单列索引的示例分析

本篇文章为大家展示了MySQL 索引分类中单列索引的示例分析,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

在成都网站设计、成都网站建设过程中,需要针对客户的行业特点、产品特性、目标受众和市场情况进行定位分析,以确定网站的风格、色彩、版式、交互等方面的设计方向。创新互联公司还需要根据客户的需求进行功能模块的开发和设计,包括内容管理、前台展示、用户权限管理、数据统计和安全保护等功能。

一个已分区的表不支持全文本索引,空间索引,外键索引,分区表上的主索引和唯一索引必须包含分区表达式中用到的所有列 。

索引分类: 单列索引

如果 explain  的结果中看到type = all ,或者key  = null  ,那么可以判断该查询用了扫描了整张表
mysql> EXPLAIN
select  * from np_order_lyz m where m.order_id = '296285' ;
+----+-------------+-------+------+---------------+------+---------+------+-------+-------------+
| id | select_type | table | type | possible_keys | key  | key_len | ref  | rows  | Extra       |
+----+-------------+-------+------+---------------+------+---------+------+-------+-------------+
|  1 | SIMPLE      | m     | ALL  | NULL          | NULL | NULL    | NULL | 45241 | Using where |
+----+-------------+-------+------+---------------+------+---------+------+-------+-------------+
1 row in set
添加索引
alter table np_order_lyz add INDEX (order_id) ;
mysql> EXPLAIN
select  * from np_order_lyz m where m.order_id = '296285' ;

现在只有一行了 ,索引呗用到了,key位order_id ,估计读取的行数比以前少很多,查询速度就加快了
mysql> EXPLAIN
select  * from np_order_lyz m where m.order_id = '296285' ;
+----+-------------+-------+------+---------------+----------+---------+-------+------+-----------------------+
| id | select_type | table | type | possible_keys | key      | key_len | ref   | rows | Extra                 |
+----+-------------+-------+------+---------------+----------+---------+-------+------+-----------------------+
|  1 | SIMPLE      | m     | ref  | order_id      | order_id | 8       | const |    1 | Using index condition |
+----+-------------+-------+------+---------------+----------+---------+-------+------+-----------------------+
1 row in set

注意 :索引可以重复创建,但是创建重复的索引会产生性能开销,所以我们应尽量避免创建重复索引,发现重复索引时,应删除重复索引,只保留一个。

上述内容就是MySQL 索引分类中单列索引的示例分析,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。


网站名称:MySQL索引分类中单列索引的示例分析
文章链接:http://dzwzjz.com/article/iecjio.html
在线咨询
服务热线
服务热线:028-86922220
TOP