兰州网站设计教程,深圳宝安网站建设500元起价,wordpress图片加标签,国有企业查询系统本文实例讲述了mysql索引对排序的影响。分享给大家供大家参考#xff0c;具体如下#xff1a;索引不仅能提高查询速度#xff0c;还可以添加排序速度#xff0c;如果order by 后面的语句用到了索引#xff0c;那么将会提高排序的速度。测试1、创建测试表#xff1a;t15表…本文实例讲述了mysql索引对排序的影响。分享给大家供大家参考具体如下索引不仅能提高查询速度还可以添加排序速度如果order by 后面的语句用到了索引那么将会提高排序的速度。测试1、创建测试表t15表CREATE TABLE t15 (id int(10) unsigned NOT NULL AUTO_INCREMENT,cat_id int(10) unsigned NOT NULL DEFAULT 0,price decimal(10,2) NOT NULL DEFAULT 0.00,name char(5) NOT NULL DEFAULT ,PRIMARY KEY (id),) ENGINEInnoDB DEFAULT CHARSETutf82、插入1W行数据$db test;$conn mysql_connect(localhost,root,1234);mysql_query(use . $db , $conn);mysql_query(set names utf8 , $conn);for($i1;$i10000;$i) {$cat_id rand(1,10);$price rand(1,50000);$name substr(str_shuffle(abcdefghjkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ234565789),0,5);$sql sprintf(insert into t15 values (%d,%d,%f,%s),$i,$cat_id,$price,$name);mysql_query($sql , $conn);}3、商场网站一般都会按照某个分类进行价格上的排序我们来模拟一下执行同一条sql语句。select name,cat_id,price from t15 where cat_id1 order by price;(1)首先不添加索引从查询分析可以看到Extra中使用到了Using filesort表示需要进行文件排序。(2)给(cat_id,price)列添加索引alter table t15 add index cp(cat_id,price);这里的查询分析中Extra没用了Using filesort表示添加上索引再进行查询的sql没有使用到外部排序而是使用到了索引的排序因为索引本身就是会排序的所以不需要额外的order by一次。4、观测查询时间Query_ID为1的是没有添加索引执行的语句Query_ID为3的是添加索引后执行的语句一个执行时间为0.013秒一个执行时间为0.005秒肯定是加上索引的快我们来看看具体快在哪里Query_ID为1的sql语句执行详细耗时图Query_ID为3的sql语句执行详细耗时图很明显Query_ID1中的Sorting result耗时0.012秒而Query_ID2中的Sorting result只耗时0.000004秒而这个Sorting result就是排序耗时。结论索引对排序的速度是有一定的影响的所以在实际的开发中要结合实际情况制定索引并尽可能将排序字段添加至索引中。更多关于MySQL相关内容感兴趣的读者可查看本站专题《MySQL索引操作技巧汇总》、《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》及《MySQL数据库锁相关技巧汇总》希望本文所述对大家MySQL数据库计有所帮助。您可能感兴趣的文章:mysql建立高效的索引实例分析mysql重复索引与冗余索引实例分析mysql索引覆盖实例分析MySQL中NULL对索引的影响深入讲解详解MySQL索引原理以及优化通过唯一索引S锁与X锁来了解MySQL死锁套路mysql 添加索引 mysql 如何创建索引MySQL索引类型总结和使用技巧以及注意事项MySQL查看、创建和删除索引的方法MySQL 创建索引(Create Index)的方法和语法结构及例子mysql聚簇索引的页分裂原理实例分析