您好,登錄后才能下訂單哦!
下文主要給大家帶來獲取mysql日期和時間的操作方法,希望這些內容能夠帶給大家實際用處,這也是我編輯獲取mysql日期和時間的操作方法這篇文章的主要目的。好了,廢話不多說,大家直接看下文吧。
一、日期時間獲取
1,1獲取當前本地的日期和時間
SELECT NOW(), CURRENT_TIMESTAMP(), LOCALTIME(), LOCALTIMESTAMP(), SYSDATE();
上面5個函數都可以獲取當前本地時間,但SYSDATE有所不同。
SELECT NOW(), SLEEP(3), NOW();
執行結果:
NOW() sleep(3) NOW() 2017-11-09 17:21:09 0 2017-11-09 17:21:09
雖然sleep了3秒,但NOW()前后2次獲取到時間是一樣的,也就是說NOW()函數獲取的時間是在整個SQL語句開始執行時的時間,無論SQL語句中有多少個NOW()函數,獲取到的時間都是一樣的。
CURRENT_TIMESTAMP(), LOCALTIME(), LOCALTIMESTAMP()和NOW()函數一樣。
但SYSDATE不同,它獲取到的是SYSDATE()函數執行時的實時時間:
SELECT SYSDATE(), SLEEP(3), SYSDATE();
執行結果:
SYSDATE() sleep(3) SYSDATE() 2017-11-09 17:25:05 0 2017-11-09 17:25:08
1.2、 獲取當前本地的日期
SELECT CURDATE(), CURRENT_DATE();
1.3、 獲取當前本地的時間
SELECT CURTIME(), CURRENT_TIME();
1.4、 獲取當前UTC日期和時間
SELECT UTC_TIMESTAMP();
1.5、 獲取當前UTC日期
SELECT UTC_DATE();
1.6、 獲取當前UTC時間
SELECT UTC_TIME();
1.7、獲取時間戳(自1970年經過的秒)
SELECT UNIX_TIMESTAMP(); -- 當前時間時間戳 SELECT UNIX_TIMESTAMP('2017-11-09 12:30:00'); -- 自1970年到2017-11-09 12:30:00經過的秒數
二、 時間操作
2.1、 從字符串提取時間和日期
SET @dt = '2008-09-10 07:15:30.123456'; SELECT DATE(@dt); -- 2008-09-10 SELECT TIME(@dt); -- 07:15:30.123456 SELECT YEAR(@dt); -- 2008 SELECT QUARTER(@dt); -- 3 SELECT MONTH(@dt); -- 9 SELECT WEEK(@dt); -- 36 SELECT DAY(@dt); -- 10 SELECT HOUR(@dt); -- 7 SELECT MINUTE(@dt); -- 15 SELECT SECOND(@dt); -- 30 SELECT MICROSECOND(@dt); -- 123456
2.2、 獲取某天在一周、一月、一年中所處位置
SET @dt = '2017-11-09'; SELECT DAYOFWEEK(@dt); -- 5 星期日為0,5代表星期四 SELECT DAYOFMONTH(@dt); -- 9 一個月的第9天 SELECT DAYOFYEAR(@dt); -- 313 2017年的第313天
2.3、 獲取指定日期的最后一天
SELECT LAST_DAY('2017-02-05'); -- 2017-02-28
2.4. 時間加減
SET @dt = "2017-11-09 17:10:20.0000001"; SELECT DATE_ADD(@dt, INTERVAL 1 DAY); -- 加1天 SELECT DATE_ADD(@dt, INTERVAL 2 HOUR); -- 加2小時 SELECT DATE_ADD(@dt, INTERVAL 1 MINUTE); -- 加1分鐘 SELECT DATE_ADD(@dt, INTERVAL 1 SECOND); SELECT DATE_ADD(@dt, INTERVAL 1 MICROSECOND); -- 加1微妙 SELECT DATE_ADD(@dt, INTERVAL 1 WEEK); -- 加1周 SELECT DATE_ADD(@dt, INTERVAL 1 MONTH); SELECT DATE_ADD(@dt, INTERVAL 1 QUARTER); -- 加1個季度 SELECT DATE_ADD(@dt, INTERVAL 1 YEAR); SELECT DATE_ADD(@dt, INTERVAL -1 DAY); -- 減1天
2.5. 兩個日期、時間加減
SELECT DATEDIFF('2008-08-08', '2008-08-01'); -- 7 SELECT DATEDIFF('2008-08-01', '2008-08-08'); -- -7 第一個參數減去第二個參數
SELECT TIMEDIFF('2008-08-08 08:08:08', '2008-08-08 00:00:00'); -- 08:08:08 SELECT TIMEDIFF('00:00:00', '08:08:08'); -- -08:08:08
2.6. 時間格式化
SELECT DATE_FORMAT('2008-08-08 22:23:00', '%W %M %Y'); -- Friday August 2008 SELECT DATE_FORMAT('2008-08-08 22:23:01', '%Y%m%d%H%i%s'); -- 20080808222301 SELECT TIME_FORMAT('22:23:01', '%H.%i.%s'); -- 22.23.01
2.7. 秒計算
計算指定時間折合多少秒,如00:01:00表示1分鐘,等于60秒。 SELECT TIME_TO_SEC('01:00:05'); -- 3605 SELECT SEC_TO_TIME(3605); -- '01:00:05'
對于以上關于獲取mysql日期和時間的操作方法,大家是不是覺得非常有幫助。如果需要了解更多內容,請繼續關注我們的行業資訊,相信你會喜歡上這些內容的。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。