MySQL 中日期和時間戳的簡介
MySQL 中日期和時間戳是常見數據類型,它們都可以表示時間。但它們的存儲方式不同,日期以字符串形式存儲,而時間戳存儲一個時間值,通常為從 "1970 年 1 月 1 日 00:00:00" 開始所經過的秒數。
將日期轉換成時間戳
在 MySQL 中可以使用 UNIX_TIMESTAMP() 函數將日期或日期時間轉換成時間戳。例如,將 "2022-01-01 00:00:00" 轉換成時間戳,可以使用以下語句:
SELECT UNIX_TIMESTAMP('2022-01-01 00:00:00');
執行結果為:1640995200
,即從 "1970 年 1 月 1 日 00:00:00" 開始經過的秒數。
將時間戳轉換成日期
如果要將時間戳轉換成日期或日期時間,可以使用 FROM_UNIXTIME() 函數。例如,將時間戳 "1640995200" 轉換成日期時間形式,可以使用以下語句:
SELECT FROM_UNIXTIME(1640995200);
執行結果為:2022-01-01 00:00:00
,即經過時間戳轉換后得到的日期時間。
使用時間戳進行日期計算
時間戳的一個優勢在于它可以用于進行日期計算。例如,要計算當前時間加上 1 天后的日期,可以使用如下語句:
SELECT DATE_ADD(NOW(), INTERVAL 1 DAY);
使用 NOW() 函數獲取當前日期時間,使用 DATE_ADD() 函數將日期增加 1 天。執行結果為當前時間加上 1 天的日期時間。