mysql日期函數(shù)用法大全
一、 返回當(dāng)前日期
1、CURRENT_DATE()、CURRENT_DATE和CURDATE()用法相同:返回當(dāng)前日期
2、CURRENT_TIME()、CURRENT_TIME和CURTIME()用法相同:返回當(dāng)前時(shí)間
3、CURRENT_TIMESTAMP()、CURRENT_TIMESTAMP、LOCALTIMESTAMP()、LOCALTIMESTAMP、LOCALTIME()、LOCALTIME和NOW()用法相同:返回當(dāng)前日期和時(shí)間
4、SYSDATE():返回函數(shù)執(zhí)行時(shí)的時(shí)間
注意:NOW()取自mysql的變量”TIMESTAMP”,而這個(gè)變量在語(yǔ)句開(kāi)始執(zhí)行的時(shí)候就設(shè)定好了,所以在整個(gè)語(yǔ)句執(zhí)行過(guò)程當(dāng)中都不會(huì)變化,而SYSDATE()取的是動(dòng)態(tài)的實(shí)時(shí)時(shí)間。
示例:SELECT NOW(),SYSDATE(),SLEEP(3),NOW(),SYSDATE()
輸出結(jié)果:2022-10-15 16:18:18,2022-10-15 16:18:18,0,2022-10-15 16:18:18,2022-10-15 16:18:21
二、 提取日期部分
1、DATE() 函數(shù)用于提取日期或日期時(shí)間的日期部分。
示例:SELECT DATE('2022-10-15 16:45:30');
輸出結(jié)果: 2022-10-15
2、DAY() 函數(shù)返回月份中的天數(shù),是DAYOFMONTH()的同義詞。
示例:SELECT DAY('2022-10-15');
輸出結(jié)果:15
3、DAYNAME() 函數(shù)返回給定日期對(duì)應(yīng)的周幾的名稱。
示例:SELECT DAYNAME('2022-10-15');
輸出結(jié)果:Saturday
4、DAYOFMONTH() 函數(shù)返回一個(gè)日期的月份中的天數(shù)(0-31)。
示例:SELECT DAYOFMONTH('2022-10-15');
輸出結(jié)果:15
5、DAYOFWEEK() 函數(shù)返回參數(shù)的星期索引。
示例:SELECT DAYOFWEEK('2022-10-15');
輸出結(jié)果:7
6、DAYOFYEAR() 函數(shù)返回一年中的天數(shù)(1-366)。
示例:SELECT DAYOFYEAR('2022-10-15');
輸出結(jié)果:288
7、EXTRACT() 函數(shù)用于從日期中提取指定部分內(nèi)容。
示例:SELECT EXTRACT(YEAR FROM '2022-10-15');
輸出結(jié)果:2022
8、FROM_DAYS() 函數(shù)將天數(shù)轉(zhuǎn)換為日期。
示例:SELECT FROM_DAYS(8765);
輸出結(jié)果:1998-05-19
9、LAST_DAY
函數(shù)返回參數(shù)所在月份的最后一天。
示例:SELECT LAST_DAY('2022-10-15');
輸出結(jié)果:2022-10-31
10、MONTH() 函數(shù)返回日期的月份。
示例:SELECT MONTH('2022-10-15');
輸出結(jié)果:10
11、MONTHNAME() 函數(shù)返回月份的名稱。
示例:SELECT MONTHNAME('2022-10-15');
輸出結(jié)果:October
12、QUARTER() 函數(shù)返回日期的季度。
示例:SELECT QUARTER('2022-10-15');
輸出結(jié)果:4
13、WEEK() 函數(shù)返回給定日期的周數(shù)。
示例:SELECT WEEK('2022-10-15');
輸出結(jié)果:41
14、WEEKDAY() 函數(shù)返回星期索引。
示例:SELECT WEEKDAY('2022-10-15');
輸出結(jié)果:5
15、WEEKOFYEAR() 函數(shù)返回日期所在年份的周數(shù)。
示例:SELECT WEEKOFYEAR('2022-10-15');
輸出結(jié)果:41
16、YEAR() 函數(shù)返回年份。
示例:SELECT YEAR('2022-10-15');
輸出結(jié)果:2022
17、YEARWEEK() 函數(shù)返回年份和周數(shù)。
示例:SELECT YEARWEEK('2022-10-15');
輸出結(jié)果:202241
18、TIME() 函數(shù)用于提取表達(dá)式中的時(shí)間部分。
示例:SELECT TIME('2022-10-15 16:45:30');
輸出結(jié)果:16:45:30
19、HOUR() 函數(shù)用于提取小時(shí)數(shù)。
示例:SELECT HOUR('16:45:30');
輸出結(jié)果:16
20、MICROSECOND() 函數(shù)返回參數(shù)中的微秒數(shù)。
示例:SELECT MICROSECOND('16:45:30.123456');
輸出結(jié)果:123456
21、MINUTE() 函數(shù)返回參數(shù)中的分鐘數(shù)。
示例:SELECT MINUTE('16:45:30');
輸出結(jié)果:45
22、SECOND() 函數(shù)返回參數(shù)中的秒數(shù)。
示例:SELECT SECOND('16:45:30');
輸出結(jié)果:30
三、 增加和減去時(shí)間
1、ADDDATE():向日期值增加時(shí)間間隔
用法:ADDDATE(date, INTERVAL expr unit)
示例:SELECT ADDDATE('2022-01-01', INTERVAL 7 DAY);
-- 輸出結(jié)果:'2022-01-08'
2、ADDTIME():加上指定的時(shí)間
用法:ADDTIME(time, TIME expr)
示例:SELECT ADDTIME('10:15:30', '02:30:00');
-- 輸出結(jié)果:'12:45:30'
3、DATE_ADD():向日期值增加時(shí)間間隔
用法:DATE_ADD(date, INTERVAL expr unit)
示例:SELECT DATE_ADD('2022-01-01', INTERVAL 1 MONTH);
-- 輸出結(jié)果:'2022-02-01'
4、DATE_SUB():從日期中減去時(shí)間間隔
用法:DATE_SUB(date, INTERVAL expr unit)
示例:SELECT DATE_SUB('2022-01-01', INTERVAL 2 WEEK);
-- 輸出結(jié)果:'2021-12-18'
5、DATEDIFF():計(jì)算兩個(gè)日期之間的差值
用法:DATEDIFF(end_date, start_date)
示例:SELECT DATEDIFF('2022-01-10', '2022-01-01');
-- 輸出結(jié)果:9
6、SUBDATE():當(dāng)使用三個(gè)參數(shù)調(diào)用時(shí),是DATE_SUB()的同義詞
用法:SUBDATE(date, INTERVAL expr unit)
示例:SELECT SUBDATE('2022-01-01', INTERVAL 1 YEAR);
-- 輸出結(jié)果:'2021-01-01'
7、SUBTIME():減去時(shí)間
用法:SUBTIME(time, TIME expr)
示例:SELECT SUBTIME('12:00:00', '00:30:00');
-- 輸出結(jié)果:'11:30:00'
8、TIMEDIFF():計(jì)算時(shí)間差
用法:TIMEDIFF(time1, time2)
示例:SELECT TIMEDIFF('14:30:00', '12:15:00');
-- 輸出結(jié)果:'02:15:00'
9、TIMESTAMPADD():給日期時(shí)間添加指定單位的時(shí)間
用法:TIMESTAMPADD(unit, interval, datetime_expr)
示例:SELECT TIMESTAMPADD(MONTH, 3, '2022-01-01');
-- 輸出結(jié)果:'2022-04-01'
10、TIMESTAMPDIFF():返回兩個(gè)日期時(shí)間表達(dá)式的時(shí)間差,使用指定的單位
用法:TIMESTAMPDIFF(unit, datetime_expr1, datetime_expr2)
示例:SELECT TIMESTAMPDIFF(DAY, '2022-01-01', '2022-01-10');
-- 輸出結(jié)果:9
11、PERIOD_ADD():將N個(gè)月增加到格式為YYMM或YYYYMM的時(shí)間P中。返回格式為YYYYMM的值。 如果P或N為空,則此函數(shù)返回NULL。
用法:PERIOD_ADD(P, N)
示例:SELECT PERIOD_ADD(202201, 3);
-- 輸出結(jié)果:202204
12、PERIOD_DIFF():返回兩個(gè)時(shí)間(格式為YYMM或YYYYMM)之間的月數(shù)。
用法:PERIOD_DIFF(P1, P2)
示例:SELECT PERIOD_DIFF(202203, 202201);
-- 輸出結(jié)果:2
四、格式化日期和時(shí)間
1、DATE_FORMAT():按指定格式格式化日期
用法:DATE_FORMAT(date, format)
示例:SELECT DATE_FORMAT('2022-10-31', '%Y/%m/%d')
輸出結(jié)果:2022/10/31
2、FROM_UNIXTIME():將Unix時(shí)間戳格式化為日期
用法:FROM_UNIXTIME(unix_timestamp, format)
示例:SELECT FROM_UNIXTIME(1635657600, '%Y-%m-%d %H:%i:%s')
輸出結(jié)果:2021-10-31 00:00:00
3、GET_FORMAT():返回日期格式字符串
用法:GET_FORMAT(format_type, locale)
示例:SELECT GET_FORMAT(DATE, 'fr_FR')
輸出結(jié)果:%d.%m.%Y
4、TIME_FORMAT():格式化時(shí)間
用法:TIME_FORMAT(time, format)
示例:SELECT TIME_FORMAT('16:45:30', '%h:%i %p')
輸出結(jié)果:04:45 PM
5、MAKEDATE():根據(jù)年份和一年中的天數(shù)創(chuàng)建日期
用法:MAKEDATE(year, day_of_year)
示例:SELECT MAKEDATE(2022, 300)
輸出結(jié)果:2022-10-27
6、MAKETIME():根據(jù)小時(shí)、分鐘和秒創(chuàng)建時(shí)間
用法:MAKETIME(hour, minute, second)
示例:SELECT MAKETIME(12, 30, 0)
輸出結(jié)果:12:30:00
7、TO_DAYS():將日期參數(shù)轉(zhuǎn)換為從公元0年開(kāi)始的天數(shù)
用法:TO_DAYS(date)
示例:SELECT TO_DAYS('2022-10-31')
輸出結(jié)果:737986
8、TO_SECONDS():將日期或日期時(shí)間參數(shù)轉(zhuǎn)換為從公元0年開(kāi)始的秒數(shù)
用法:TO_SECONDS(datetime)
示例:SELECT TO_SECONDS('2021-10-31 00:00:00')
輸出結(jié)果:63768716800
9、SEC_TO_TIME():將秒數(shù)轉(zhuǎn)換為 'hh:mm:ss' 格式
用法:SEC_TO_TIME(seconds)
示例:SELECT SEC_TO_TIME(3660)
輸出結(jié)果:01:01:00
10、TIME_TO_SEC():將參數(shù)轉(zhuǎn)換為秒數(shù)
用法:TIME_TO_SEC(time)
示例:SELECT TIME_TO_SEC('02:30:45')
輸出結(jié)果:9045
11、UNIX_TIMESTAMP():返回Unix時(shí)間戳
用法:UNIX_TIMESTAMP(), UNIX_TIMESTAMP(datetime)
示例:SELECT UNIX_TIMESTAMP()
輸出結(jié)果:1640611200
12、TIMESTAMP():帶有一個(gè)參數(shù)時(shí),返回日期或日期時(shí)間表達(dá)式;帶有兩個(gè)參數(shù)時(shí),返回參數(shù)的總和
用法:TIMESTAMP(expr), TIMESTAMP(expr1, expr2)
示例:SELECT TIMESTAMP('2022-10-31'), SELECT TIMESTAMP('2022-10-31', '12:30:00')
輸出結(jié)果:2022-10-31 00:00:00, 2022-10-31 12:30:00
五、時(shí)區(qū)轉(zhuǎn)換
1、CONVERT_TZ(): 將一個(gè)時(shí)區(qū)轉(zhuǎn)換為另一個(gè)時(shí)區(qū)
該函數(shù)用于將給定的時(shí)間值從一個(gè)時(shí)區(qū)轉(zhuǎn)換為另一個(gè)時(shí)區(qū)。它接受三個(gè)參數(shù):要轉(zhuǎn)換的時(shí)間值、原始時(shí)區(qū)和目標(biāo)時(shí)區(qū)。返回值是在目標(biāo)時(shí)區(qū)下的對(duì)應(yīng)時(shí)間值。
用法:SELECT CONVERT_TZ('2022-03-15 10:30:00', 'America/New_York', 'Asia/Tokyo');
輸出結(jié)果:2022-03-15 23:30:00
2、UTC_DATE(): 返回當(dāng)前的UTC日期
該函數(shù)返回當(dāng)前系統(tǒng)時(shí)間的日期部分,使用協(xié)調(diào)世界時(shí) (UTC) 表示。它不需要任何參數(shù)。
用法:SELECT UTC_DATE();
輸出結(jié)果:2022-07-12
3、UTC_TIME(): 返回當(dāng)前的UTC時(shí)間
該函數(shù)返回當(dāng)前系統(tǒng)時(shí)間的時(shí)間部分,使用協(xié)調(diào)世界時(shí) (UTC) 表示。它不需要任何參數(shù)。
用法:SELECT UTC_TIME();
輸出結(jié)果:17:25:30
4、UTC_TIMESTAMP(): 返回當(dāng)前的UTC日期和時(shí)間
該函數(shù)返回當(dāng)前系統(tǒng)時(shí)間的日期和時(shí)間部分,使用協(xié)調(diào)世界時(shí) (UTC) 表示。它不需要任何參數(shù)。
用法:SELECT UTC_TIMESTAMP();
輸出結(jié)果:2022-07-12 17:25:30
到此這篇關(guān)于mysql日期函數(shù)用法大全的文章就介紹到這了,更多相關(guān)mysql日期函數(shù)用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- MySQL日期格式以及日期函數(shù)舉例詳解
- Mysql日期格式以及內(nèi)置日期函數(shù)用法詳解
- 使用Pandas?實(shí)現(xiàn)MySQL日期函數(shù)的解決方法
- mysql日期函數(shù)TO_DAYS()函數(shù)的詳細(xì)講解
- MySQL學(xué)習(xí)之日期函數(shù)的用法詳解
- MySQL日期函數(shù)與時(shí)間函數(shù)匯總(MySQL 5.X)
- MySQL日期函數(shù)與日期轉(zhuǎn)換格式化函數(shù)大全
- mysql 獲取當(dāng)前日期函數(shù)及時(shí)間格式化參數(shù)詳解
- 深入mysql YEAR() MONTH() DAYOFMONTH()日期函數(shù)的詳解
- mysql From_unixtime及UNIX_TIMESTAMP及DATE_FORMAT日期函數(shù)
相關(guān)文章
MySQL數(shù)據(jù)庫(kù)常見(jiàn)字段類型長(zhǎng)度匯總大全
這篇文章主要給大家介紹了關(guān)于MySQL數(shù)據(jù)庫(kù)常見(jiàn)字段類型長(zhǎng)度匯總大全的相關(guān)資料,需要的朋友可以參考下2024-05-05MySQL多實(shí)例的配置應(yīng)用實(shí)例場(chǎng)景
在一臺(tái)服務(wù)器上,運(yùn)行多個(gè)數(shù)據(jù)庫(kù)服務(wù),這些服務(wù)進(jìn)程通過(guò)不同的socket監(jiān)聽(tīng)不同的服務(wù)端口來(lái)提供各自的服務(wù),這篇文章主要介紹了MySQL多實(shí)例的配置場(chǎng)景分析,需要的朋友可以參考下2021-12-12mysql 內(nèi)存緩沖池innodb_buffer_pool_sizes大小調(diào)整實(shí)現(xiàn)
innodb_buffer_pool_size是MySQL中InnoDB存儲(chǔ)引擎的一個(gè)重要參數(shù),本文主要介紹了mysql 內(nèi)存緩沖池innodb_buffer_pool_sizes大小調(diào)整實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2024-05-05mysql中find_in_set()函數(shù)的使用詳解
這篇文章主要介紹了mysql中find_in_set()函數(shù)的使用,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-05-05Windows安裝MySQL8.0.28.0.msi方式(圖文詳解)
這篇文章主要介紹了Windows安裝MySQL8.0.28.0.msi,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03Mysql5.7.17 winx64.zip解壓縮版安裝配置圖文教程
這篇文章主要介紹了Mysql5.7.17 winx64.zip解壓縮版安裝配置圖文教程,需要的朋友可以參考下2018-03-03解決mysql數(shù)據(jù)庫(kù)導(dǎo)入sql文件不成功的問(wèn)題
這篇文章主要介紹了解決mysql數(shù)據(jù)庫(kù)導(dǎo)入sql文件不成功的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11