MySQL 索引分类中单列索引的示例解析
发布时间:2022-01-13 11:09:10 所属栏目:MySql教程 来源:互联网
导读:本篇文章为大家展示了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 注意 :索引可以重复创建,但是创建重复的索引会产生性能开销,所以我们应尽量避免创建重复索引,发现重复索引时,应删除重复索引,只保留一个。 (编辑:ASP站长) 【免责声明】本站内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。 |
相关内容
未处理完善
-
无相关信息
最新更新