1. DATEDIFF():计算两个日期之间的天数差。
SELECT DATEDIFF('2022-09-05', '2021-09-01');
-- 结果:4
2. DATE_FORMAT():按照指定的格式显示日期时间值。
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s');
-- 结果:2022-09-01 10:30:00(假设今天是 2021 年 9 月 1 日,现在是 10:30:00)
详情参考[Mysql] DATE_FORMAT函数_mysql date_format-优快云博客
3. DATE_ADD():给指定的日期时间值添加指定的时间间隔。
SELECT DATE_ADD(NOW(), INTERVAL 1 DAY);
-- 结果:2021-09-02 10:30:00(假设今天是 2021 年 9 月 1 日,现在是 10:30:00)
4. DATE_SUB():从指定的日期时间值减去指定的时间间隔。
SELECT DATE_SUB(NOW(), INTERVAL 1 DAY);
-- 结果:2022-08-31 10:30:00(假设今天是 2021 年 9 月 1 日,现在是 10:30:00)
5. CURRENT_DATE 或 CURDATE():获取当前日期。
SELECT CURRENT_DATE;
SELECT CURDATE();
-- 结果:2021-09-01(假设今天是 2021 年 9 月 1 日)
6. CURRENT_TIME 或 CURTIME():获取当前时间。
SELECT CURRENT_TIME;
SELECT CURTIME();
-- 结果:10:30:00(假设现在是 10:30:00)
7. NOW() 或 CURRENT_TIMESTAMP:获取当前日期和时间。
SELECT NOW();
SELECT CURRENT_TIMESTAMP;
-- 结果:2022-09-01 10:30:00(假设今天是 2021 年 9 月 1 日,现在是 10:30:00)
8. DATE():从日期时间值中提取日期部分。
SELECT DATE(NOW());
-- 结果:2022-09-01(假设今天是 2022 年 9 月 1 日,现在是 10:30:00)
9. TIME():从日期时间值中提取时间部分。
SELECT TIME(NOW());
-- 结果:10:30:00(假设现在是 10:30:00)
10. YEAR():从日期时间值中提取年份。
SELECT YEAR(NOW());
-- 结果:2021(假设今天是 2021 年 9 月 1 日)
11. MONTH():从日期时间值中提取月份。
SELECT MONTH(NOW());
-- 结果:9(假设今天是 2021 年 9 月 1 日)
12. DAY() 或 DAYOFMONTH():从日期时间值中提取月份中的天数。
SELECT DAY(NOW());
SELECT DAYOFMONTH(NOW());
-- 结果:1(假设今天是 2021 年 9 月 1 日)
13. DAYOFWEEK():从日期时间值中提取星期几(从星期日开始算起,1 表示星期日,2 表示星期一,以此类推)。
SELECT DAYOFWEEK(NOW());
-- 结果:2(假设今天是 2021 年 9 月 1 日,星期一)
14. DAYOFYEAR():从日期时间值中提取一年中的天数。
SELECT DAYOFYEAR(NOW());
-- 结果:273(假设今天是 2021 年 9 月 1 日)