在mysql中,可以使用CURDATE()和CURRENT_DATE()函數來獲取當前日期,可以將當前日期按照“YYYY-MM-DD”或“YYYYMMDD”格式的值返回,具體格式根據函數用在字符串或數字語境中而定。
(推薦教程:mysql視頻教程)
MySQL 中 CURDATE() 和 CURRENT_DATE()
MySQL 中 CURDATE() 和 CURRENT_DATE() 函數的作用相同,將當前日期按照“YYYY-MM-DD”或“YYYYMMDD”格式的值返回,具體格式根據函數用在字符串或數字語境中而定。
【實例1】使用日期函數 CURDATE 和 CURRENT_DATE 獲取系統(tǒng)當前日期,輸入的 SQL 語句和執(zhí)行結果如下所示。
mysql> SELECT CURDATE(),CURRENT_DATE(),CURRENT_DATE()+0; +------------+----------------+------------------+ | CURDATE() | CURRENT_DATE() | CURRENT_DATE()+0 | +------------+----------------+------------------+ | 2020-10-13 | 2020-10-13 | 20201013 | +------------+----------------+------------------+ 1 row in set (0.03 sec)
由運行結果可以看到,兩個函數的作用相同,返回了相同的系統(tǒng)當前日期,“CURDATE()+0”將當前日期值轉換為數值型的。
MySQL中 NOW() 和 SYSDATE()
MySQL中 NOW() 和 SYSDATE() 函數的作用相同,都是返回當前日期和時間值,格式為“YYYY-MM-DD HH:MM:SS”或“YYYYMMDDHHMMSS”,具體格式根據函數用在字符串或數字語境中而定。
【實例2】使用日期時間函數 NOW 和 SYSDATE 獲取當前系統(tǒng)的日期和時間,輸入的 SQL 語句和執(zhí)行結果如下所示。
mysql> SELECT NOW(),SYSDATE(); +---------------------+---------------------+ | NOW() | SYSDATE() | +---------------------+---------------------+ | 2017-04-01 19:36:52 | 2017-04-01 19:36:52 | +---------------------+---------------------+ 1 row in set (0.04 sec)
由運行結果可以看到,NOW 函數和 SYSDATE 函數返回的結果是相同的。
雖然在 MySQL 中 NOW() 和 SYSDATE() 都表示當前時間,但是 NOW() 取的是語句開始執(zhí)行的時間,而 SYSDATE() 取的是語句執(zhí)行過程中動態(tài)的實時時間。
【實例3】先查詢了 NOW() 和 SYSDATE(),然后 sleep 了 3 秒,再查詢 NOW() 和 SYSDATE(),結果如下:
mysql> select now(),sysdate(),sleep(3),now(),sysdate(); +-----------------------+------------------------+-------------+-----------------------+---------------------+ | now() | sysdate() | sleep(3) | now() | sysdate() | +-----------------------+------------------------+-------------+------------------- ---+---------------------+ | 2019-02-27 10:59:39 | 2019-02-27 10:59:39 | 0 | 2019-02-27 10:59:39 | 2019-02-27 10:59:42 | +-----------------------+------------------------+-------------+-----------------------+---------------------+ 1 row in set (3.00 sec)
由運行結果可以看出,NOW() 函數始終獲取的是 SQL 語句開始執(zhí)行的時間,而 SYSDATE() 函數則是動態(tài)獲取的實時時間。