标签:mysql
都知道通过在MySQL中执行select sleep(N)可以让此语句运行N秒钟:mysql> select sleep(1); +----------+ | sleep(1) | +----------+ | 0 | +----------+ 1 row in set (1.00 sec)返回给客户端的执行时间显示出等待了1秒钟
mysql> select name from animals where name='tiger'; +-------+ | name | +-------+ | tiger | +-------+ 1 row in set (0.00 sec)在这种情况下,可以通过在语句中添加一个sleep(N)函数,强制让语句停留N秒钟,来查看后台线程,例如:
mysql> select sleep(1),name from animals where name='tiger'; +----------+-------+ | sleep(1) | name | +----------+-------+ | 0 | tiger | +----------+-------+ 1 row in set (1.00 sec)同样的条件该语句返回的执行时间为1.0秒。
mysql> select name from animals where name='pig'; Empty set (0.00 sec)在这样一种条件下,即使添加了sleep(N)这个函数,语句的执行还是会一闪而过,例如:
mysql> select sleep(1),name from animals where name='pig'; Empty set (0.00 sec)另外需要注意的是,添加sleep(N)这个函数后,语句的执行具体会停留多长时间取决于满足条件的记录数,MySQL会对每条满足条件的记录停留N秒钟。
mysql> select name from animals where name like '%ger'; +-------+ | name | +-------+ | ger | | iger | | tiger | +-------+ 3 rows in set (0.00 sec)那么针对该语句添加了sleep(1)这个函数后语句总的执行时间为3.01秒,可得出,MySQL对每条满足条件的记录停留了1秒中。
mysql> select sleep(1),name from animals where name like '%ger'; +----------+-------+ | sleep(1) | name | +----------+-------+ | 0 | ger | | 0 | iger | | 0 | tiger | +----------+-------+ 3 rows in set (3.01 sec)
标签:mysql
原文地址:http://blog.csdn.net/zyz511919766/article/details/42241211