1、获取当前日期的函数和获取当前时间的函数
CURDATE()+0把时间变成数字
SELECT CURDATE(),CURRENT_DATE(),CURDATE()+0,NOW();
结果
2020-08-22 2020-08-22 20200822 2020-08-22 19:11:35
SELECT CURRENT_TIME(),CURRENT_TIME(),current_date()+0;
结果
19:12:12 19:12:12 20200822
2、获取当前日期和时间的函数
SELECT CURRENT_TIMESTAMP(),LOCALTIME(),now(),SYSDATE();
2020-08-22 19:16:59 2020-08-22 19:16:59 2020-08-22 19:16:59 2020-08-22 19:16:59
3、返回时间秒数
SELECT UNIX_TIMESTAMP(),UNIX_TIMESTAMP(NOW()),NOW();
结果:
1598095276 1598095276 2020-08-22 19:21:16
把秒装换成时间格式
SELECT FROM_UNIXTIME(UNIX_TIMESTAMP());
2020-08-22 19:23:06
4、返回UTC日期的函数和返回UTC时间的函数,即世界标准时间
SELECT UTC_DATE(),UTC_DATE()+0,UTC_TIME(),UTC_TIME()+0;
结果
2020-08-22 20200822 11:26:01 112601
5、获取月份的函数
SELECT MONTH('2020-12-20'),MONTH(NOW());
结果
12 8
获取月份英文名字
SELECT MONTHNAME('2020-12-12');
结果
December
6、获取星期的函数
SELECT DAYNAME('2018-12-02'),DAYOFWEEK('2018-12-02'),WEEKDAY('2018-12-02');
结果DAYOFWEEK从周六=1算起
Sunday 1 6
7、获取星期数的函数(和上面6不同,星期数是相对一年来说的)
SELECT WEEK('2020-08-22',1),WEEKOFYEAR('2020-08-22');
结果
34 34
8、获取天数的函数
SELECT DAYOFYEAR('2020-08-22'),DAYOFMONTH('2020-08-22');
结果
235 22
9、获取年份、极度、小时、分钟和秒钟的函数
YEAR(date)获取date对于年份、范围是1970-2069
SELECT YEAR('2020-08-22'),QUARTER('2020-08-22'),HOUR('2020-08-22'),MINUTE('2020-08-22'),SECOND('2020-08-22');
结果
2020 3 0 20 20
10、获取指定日期的指定值的函数
SELECT EXTRACT(YEAR FROM NOW()),EXTRACT(DAY FROM NOW()),EXTRACT(YEAR_MONTH FROM NOW());
结果
2020 22 202008
11、时间和秒钟转换的函数:将当前时间时分秒转换为秒数
SELECT TIME_TO_SEC(NOW());
结果
73703
12、计算日期和时间的函数
增加1秒
SELECT DATE_ADD('2020-08-22 20:30:00',INTERVAL 1 SECOND)
结果
2020-08-22 20:30:01
将指定时间增加一分一秒
SELECT DATE_ADD('2020-08-22 20:30:00',INTERVAL '1:1' MINUTE_SECOND)
结果
2020-08-22 20:31:01
减少1秒
SELECT DATE_SUB('2020-08-22 20:30:00',INTERVAL 1 SECOND)
结果
2020-08-22 20:29:59
将指定时间减少一分一秒
SELECT DATE_SUB('2020-08-22 20:30:00',INTERVAL '1:1' MINUTE_SECOND)
结果
2020-08-22 20:28:59
增加1秒,相应有SUBTIME
SELECT ADDTIME('2020-08-22 20:30:00','0:0:1')
结果
2020-08-22 20:30:01
13、将日期和时间格式化的函数
SELECT DATE_FORMAT('2020-05-22 20:30:00','%Y-%m-%d %H:%m:%s')
结果
2020-05-22 20:05:00