mysql-日期和时间函数

1.获取日期、时间

mysql-日期和时间函数_第1张图片

SELECT CURDATE(),
       CURTIME(),
       NOW(),
       UTC_DATE(),
       UTC_TIME()
FROM dual;

 2.日期与时间戳的转换

mysql-日期和时间函数_第2张图片

SELECT UNIX_TIMESTAMP(),UNIX_TIMESTAMP(NOW()),FROM_UNIXTIME(UNIX_TIMESTAMP())
FROM dual;

3.获取月份、星期、星期数、天数等函数

mysql-日期和时间函数_第3张图片

SELECT YEAR(CURDATE()),MONTH(CURDATE()),DAY(CURDATE()),
HOUR(CURTIME()),MINUTE(NOW()),SECOND(SYSDATE())
FROM dual;

SELECT MONTHNAME('2021-10-26'),DAYNAME('2021-10-26'),WEEKDAY('2021-10-26'),
QUARTER(CURDATE())
FROM DUAL;

SELECT  WEEK(CURDATE()),DAYOFYEAR(NOW()),
DAYOFMONTH(NOW()),DAYOFWEEK(NOW())
FROM DUAL;

4.日期的操作 

 mysql-日期和时间函数_第4张图片

SELECT EXTRACT(MINUTE FROM NOW()),EXTRACT( WEEK FROM NOW()),
EXTRACT( QUARTER FROM NOW()),EXTRACT( MINUTE_SECOND FROM NOW())
FROM DUAL;

5.时间和秒钟转换的函数

mysql-日期和时间函数_第5张图片

SELECT TIME_TO_SEC('12:30:56'),SEC_TO_TIME(TIME_TO_SEC('12:30:56'))
FROM DUAL;

6.计算日期和时间的函数

mysql-日期和时间函数_第6张图片

SELECT ADDDATE('2021-10-21 23:32:12',INTERVAL 1 SECOND) AS col3,
DATE_ADD('2021-10-21 23:32:12',INTERVAL '1_1' MINUTE_SECOND) AS col4,
DATE_ADD(NOW(), INTERVAL -1 YEAR) AS col5, #可以是负数
DATE_ADD(NOW(), INTERVAL '1_1' YEAR_MONTH) AS col6 #需要单引号
FROM DUAL;

SELECT DATE_SUB('2021-01-21',INTERVAL 31 DAY) AS col1,
SUBDATE('2021-01-21',INTERVAL 31 DAY) AS col2,
DATE_SUB('2021-01-21 02:01:01',INTERVAL '1 1' DAY_HOUR) AS col3
FROM DUAL;

 

mysql-日期和时间函数_第7张图片

SELECT ADDTIME(NOW(),20),SUBTIME(NOW(),30),SUBTIME(NOW(),'1:1:3'),DATEDIFF(NOW(),'2021-10-01')
FROM DUAL;

SELECT TIMEDIFF(NOW(),'2021-10-25 22:10:10'),FROM_DAYS(366),TO_DAYS('0000-12-25')
FROM DUAL;

SELECT  LAST_DAY(NOW()),MAKEDATE(YEAR(NOW()),12),MAKETIME(10,21,23),PERIOD_ADD(20200101010101,
10)
FROM DUAL;

7.日期的格式化与解析

mysql-日期和时间函数_第8张图片

上述非GET_FORMAT函数中fmt参数常用的格式符:

mysql-日期和时间函数_第9张图片

 GET_FORMAT函数中date_type和format_type参数取值如下: 

mysql-日期和时间函数_第10张图片

你可能感兴趣的:(mysql,数据库)