测试使用的是mysql官方提供的测试数据,是在mysql官网进行下载的(不是mysql安装默认的employees数据库),其中有一个employees表,里面是有300024条数据,约等于30万条数据。
employees表的结构:
'emp_no', 'int(11)', 'NO', 'PRI', NULL, '''birth_date', 'date', 'NO', '', NULL, ''
'first_name', 'varchar(14)', 'NO', '', NULL, ''
'last_name', 'varchar(16)', 'NO', '', NULL, ''
'gender', 'enum(\'M\',\'F\')', 'NO', '', NULL, ''
'hire_date', 'date', 'NO', '', NULL, ''
测试:
select count(1) from employees;
进行5次查询后的结果如下

select count(*) from employees;
进行5次查询后的结果如下
select count(emp_no) from employees;
进行5次查询后的结果如下

这三个进行对比,在查询时间上没有太大的区别。但是可以表结构不同的情况下,可能还是有一些区别的。我们要针对不同的表结构写出最优的sql语句。
本文通过对比不同查询方式在相同数据量下的执行效率,探讨了如何根据表结构特点编写更优的SQL语句。以30万条记录的employees表为例,分析了三种常见查询方法的性能差异。

701

被折叠的 条评论
为什么被折叠?



