常用日期函数
1、获取时间
#获取当前日期时间
select now() ; #2022-01-16 14:26:59
#获取当前日期
select curdate(); #2022-01-16
#获取当前时间
select curtime(); #14:30:09
#获取当前时间2022-01-16 14:37:19的年、月、日、小时、分钟、秒
select year(now()); #2022
select month(now()); #1
select day(now()); #16
select hour(now()); #14
select minute(now()); #37
select second(now()); #19
#获取今天在当前月份是第几周
select week(now()); #3,表示是第三周
#格式化日期
select date_format(now(),'%Y-%m-%d %H:%i:%s');
#2022-01-16 15:06:43
select date_format(now(),'%Y');
#2022
#字符串转日期
select str_to_date('2022-01-16 14:26:59', '%Y-%m-%d %H:%i:%s');
#2022-01-16 14:26:59
#日期转换成时间戳
SELECT UNIX_TIMESTAMP();-- 当前时间的时间戳:1642318582
SELECT UNIX_TIMESTAMP('2022-01-16');-- 指定日期的时间戳:1642262400
SELECT UNIX_TIMESTAMP('2022-01-16 14:26:59');-- 指定日期时间的时间戳:1642314419
#将时间戳转换成日期
SELECT FROM_UNIXTIME(1642318582);-- 2022-01-16 15:36:22
SELECT FROM_UNIXTIME(1642318582, '%Y-%m-%d %H:%i:%s');-- 获取时间戳对应的格式化日期时间 2022-01-16 15:36:22
2、week函数,month函数
语法:WEEK(date);
用于计算日期date是一年中的第几周
语法:month(date);
返回date对应月份
3、增加n个月或n周
语法:date_add('日期',interval n week) 增加n周
date_add('日期',interval n month) 增加n月