1. 程式人生 > >MySQL時間函式NOW()、SYSDATE()的區別

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()和SYSDATE()

NOW()還有3個同義詞,效果跟NOW()一樣,而且都有2種形式寫法:

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