Mysql中如何查看Sql语句的执行时间(建议多准备点初始数据效果更佳)

Posted 小王java

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql中如何查看Sql语句的执行时间(建议多准备点初始数据效果更佳)相关的知识,希望对你有一定的参考价值。

mysql中如何查看Sql语句的执行时间

一、初始SQL准备

  • 初始化表
-- 用户表
create table t_users(
                        id int primary key auto_increment,
-- 用户名
                        username varchar(20),
-- 密码
                        password varchar(20),
-- 真实姓名
                        real_name varchar(50),
-- 性别 1表示男  0表示女
                        sex int,
-- 出生年月日
                        birth date,
-- 手机号
                        mobile varchar(11),
-- 上传后的头像路径
                        head_pic varchar(200)
);
  • 初始化数据
--添加用户数据
insert into t_users values(null,'whj','123456','王恒杰',1,NOW(),'12345678901','boy.jpg');
insert into t_users values(null,'dzw','123456','邓正武',1,NOW(),'12345678901','boy.jpg');
insert into t_users values(null,'yfj','123456','杨福君',1,NOW(),'12345678901','girl.jpg');
insert into t_users values(null,'zx','123456','张西',1,NOW(),'12345678901','girl.jpg');
insert into t_users values(null,'zxj','123456','周宣君',0,NOW(),'12345678901','boy.jpg');
insert into t_users values(null,'lfk','123456','刘福昆',1,NOW(),'12345678901','boy.jpg');
  • 表结构

  • 相关数据

二、Mysql查看Sql语句的执行时间

1、show profiles;

最开始输入show profiles.此时没有数据

2、show variables;

  • show varables:查看profiling是否开启,即Value为ON

直接使用show variables命令会将所有变量展示出来,太多了,我们不方便查看

就可以使用模糊查询了,用like将profiling挑选出来

一般没有开启都为off

 show variables like 'profiling';

3、set profilling=1,开启profiling

show variables like 'profiling';

这样我们的Mysql就可以查看Sql语句的执行时间

三、不同查询的执行时间

select * from t_users;     
select id,username,password,real_name,sex,birth,mobile,head_pic from t_users;
 
select * from t_users where username like 'whj';

  • 三种查询的时间对比

结论:

sql 在使用SELECT语句或者使用其它语句时,直接使用*和把所有的字段弄上去查询,性能有很大差距,所以我们平时写查询最好用字段写上

以上是关于Mysql中如何查看Sql语句的执行时间(建议多准备点初始数据效果更佳)的主要内容,如果未能解决你的问题,请参考以下文章

MySQL中如何查看“慢查询”,如何分析执行SQL的效率?

MySQL中如何查看“慢查询”,如何分析执行SQL的效率?

Mysql中如何查看慢查询以及查看线程

MySQL中如何查看“慢查询”,如何分析执行SQL的效率?

如何查看mysql中执行sql语句

如何开启MySQL慢查询日志