博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mysql测试_索引对查询性能影响
阅读量:6407 次
发布时间:2019-06-23

本文共 2854 字,大约阅读时间需要 9 分钟。

1.环境信息

mysql-5.6.17-winx64

2.新建两张表,tb_big_data和tb_big_data2。tb_big_data数据1100000条,tb_big_data2数据2000条

mysql> select count(*) from tb_big_data;+----------+| count(*) |+----------+|  1100000 |+----------+1 row in setmysql> select count(*) from tb_big_data2;+----------+| count(*) |+----------+|     2000 |+----------+1 row in set

3.执行join查询,查看执行join查询且结果为49000的查询时间

mysql> select * from tb_big_data2 b left join tb_big_data a on b.random_more = a.random where b.random_more=2;

4.对字段增加普通索引和不加索引,查询时间相差1000倍

mysql>  show profiles;+----------+--------------+--------------------------------------------------------------------------------------------------------+| Query_ID | Duration     | Query                                                                                                  |+----------+--------------+--------------------------------------------------------------------------------------------------------+                                                                                 ||        9 | 135.77425125 | select * from tb_big_data2 b left join tb_big_data a on b.random_more = a.random where b.random_more=2 |                                              |       11 |   4.96485125 | ALTER TABLE tb_big_data ADD INDEX index_name (random)                                                  ||       12 |   0.01095375 | describe tb_big_data                                                                                   ||       13 |   0.14014425 | select * from tb_big_data2 b left join tb_big_data a on b.random_more = a.random where b.random_more=2 |+----------+--------------+--------------------------------------------------------------------------------------------------------+

5.单列索引和多列索引

未创建索引,对两个字段过滤查询需要,结果为2条数据耗时6.4s,创建多列索引(count,random),耗时0.03s,创建两个单列索引,耗时0.08s。在对多个字段进行过滤查询时,多列索引和单列索引的性能还是不一样的。

mysql> show profiles;+----------+-------------+-------------------------------------------------------------+| Query_ID | Duration    | Query                                                       |+----------+-------------+-------------------------------------------------------------+|        8 |    6.439019 | select count(*) from tb_big_data where count=6 and random=2 ||        9 |   44.570048 | create index index_name on tb_big_data(count,random)        ||       10 |   0.0311755 | select count(*) from tb_big_data where count=6 and random=2 |                                       ||       13 | 37.07460275 | create index index_name on tb_big_data(count)                                                     ||       15 | 39.00397825 | create index index_name2 on tb_big_data(random)                                                     ||       17 |  0.08649375 | select count(*) from tb_big_data where count=6 and random=2 |+----------+-------------+-------------------------------------------------------------+

转载地址:http://sbhea.baihongyu.com/

你可能感兴趣的文章
IO输入/输出流的简单总结
查看>>
JavaScript之DOM-9 HTML DOM(HTML DOM概述、常用HTML DOM对象、HTML表单)
查看>>
技术成长之路(一)
查看>>
中国北方国际五金城硬件选型
查看>>
php.exe启动时提示缺少MVCR110.dall 64位 window系统 解决
查看>>
判断是否为数字方法
查看>>
[翻译] EF Core in Action 关于这本书
查看>>
js Uncaught TypeError: undefined is not a function
查看>>
数据库存储引擎
查看>>
[2019.2.13]BZOJ4318 OSU!
查看>>
版本号带两个小数点的,如何比较大小?( NSStringCompareOptions )
查看>>
QCustomplot使用分享(三) 图
查看>>
什么是java?
查看>>
WPF路径动画(动态逆向动画)
查看>>
Low Level Reader Protocol (LLRP) 简介
查看>>
[Micropython]TPYBoard v10x NRF24L01无线通讯模块使用教程
查看>>
mysql中show processlist过滤和杀死线程
查看>>
最新Sublime Text 2 激活 汉化
查看>>
基础数据类型之字典
查看>>
第七次作业
查看>>