1、当前日期或者时间
返回当前日期(不含时间)
SELECT CURDATE();
返回当前时间(不含日期)
SELECT CURTIME();
返回当前日期和时间
SELECT NOW();
2、日期加减
日期加法
SELECT DATE_ADD('2024-06-18', INTERVAL 5 DAY); -- 2024-06-23
日期减法
SELECT DATE_SUB('2024-06-18', INTERVAL 3 MONTH); -- 2024-03-18
3、日期格式化与解析
按指定格式显示日期
SELECT DATE_FORMAT('2024-06-18', '%Y/%m/%d'); -- 2024/06/18
按指定格式解析字符串为日期
SELECT STR_TO_DATE('18-06-2024', '%d-%m-%Y'); -- 2024-06-18
4、获取日期的部分
获取年份
SELECT YEAR('2024-06-18'); -- 2024
获取月份
SELECT MONTH('2024-06-18'); -- 6
获取日期(天)
SELECT DAY('2024-06-18'); -- 18
获取周数
SELECT WEEK('2024-06-18'); -- 25
获取星期几(1=星期日,7=星期六)
SELECT DAYOFWEEK('2024-06-18'); -- 3(星期二)
5、时间差相关
返回两个日期之间的天数差
SELECT DATEDIFF('2024-06-18', '2024-06-10'); -- 8
返回指定单位的时间差
SELECT TIMESTAMPDIFF(MONTH, '2024-01-01', '2024-06-18'); -- 5 SELECT TIMESTAMPDIFF(DAY, '2024-06-10', '2024-06-18'); -- 8
6、其他常用函数
返回该月的最后一天
SELECT LAST_DAY('2024-06-18'); -- 2024-06-30