mysql 使用sleep操作 update 来停止一段时间执行语句 [骚操作]

update mytestTable inner join(select '2' as id, sleep(5)) a on mytestTable.id=a.id set mytestTable.name='xiaowang';

MySQL中时间函数NOW()和SYSDATE()的区别

 

mysql中日期函数还是比较常用的。主要有NOW()和SYSDATE()两种,虽然都表示当前时间,但使用上有一点点区别。

  NOW()取的是语句开始执行的时间,SYSDATE()取的是动态的实时时间。

因为NOW()取自mysql的一个变量”TIMESTAMP”,而这个变量在语句开始执行的时候就设定好了,因此在整个语句执行过程中都不会变化。

执行下面这个例子就明白了:

SELECT NOW(),SYSDATE(),SLEEP(3),NOW(),SYSDATE()

先查询了NOW()和SYSDATE(),然后sleep了3秒,再查询NOW()和SYSDATE(),结果如下:

 

NOW()还有3个同义词,效果跟NOW()一样,而且都有2种形式写法:

LOCALTIME或LOCALTIME()
LOCALTIMESTAMP或LOCALTIMESTAMP()
CURRENT_TIMESTAMP或CURRENT_TIMESTAMP()

posted @ 2020-05-06 22:23  darling331  阅读(979)  评论(0编辑  收藏  举报