sql数据库:日期函数
-
日期函数
-
CURDATE()/CURRENT_DATE()返回当前日期
SELECT CURRENT_DATE,CURRENT_TIME,CURRENT_TIMESTAMP
-
CURRENT_TIME()/CURTIME()返回当前时间
-
CURRENT_TIMESTAMP()返回当前日期和时间
-
DATEDIFF(d1,d2)计算日期 d1->d2 之间相隔的天数
SELECT DATEDIFF('2024-05-07','1908-12-04')
-
TIMEDIFF(time1, time2)计算时间差值
select TIMEDIFF('10:58:00','09:00:00')
-
UNIX_TIMESTAMP()得到时间戳
SELECT UNIX_TIMESTAMP()
-
FROM_UNIXTIME()时间戳转日期
select FROM_UNIXTIME(UNIX_TIMESTAMP()-10*24*60*60)
-
DATE_ADD(d,INTERVAL expr type)从日期增加指定的时间间隔。
SELECT DATE_ADD(hire_date,interval -10 day) from emp; SELECT DATE_ADD(hire_date,interval 10 month) from emp;
-
DATE_SUB(date,INTERVAL expr type)函数从日期减去指定的时间间隔。
SELECT DATE_SUB(hire_date,interval 10 day) from emp
-
DATE_FORMAT(d,f)表达式 f的要求显示日期 d
select DATE_FORMAT(CURRENT_DATE,'%Y-%m-%d %H:%i:%S'); select DATE_FORMAT(CURRENT_DATE,'%m%d %Y');
-
STR_TO_DATE(string, format_mask)将字符串转变为日期
select STR_TO_DATE('2024王雨龙05朱超07张雪','%Y王雨龙%m朱超%d张雪');
-- 获取 日期的年份 月份 日 过了多少周(从0计数) 周几 过了多少周 select YEAR('2024-05-07') ,MONTH('2024-05-07') ,day('2024-05-07') ,week('2024-05-07') ,WEEKDAY('2024-05-07') ,WEEKOFYEAR('2024-05-07') -- 你出生的那一天是当年的多少周 '2000-07-30' -- 当年的那一周映射到今年是那一天到那一天 select WEEKOFYEAR(DATE_ADD('2000-07-30',INTERVAL 24 year)) ,WEEKDAY(DATE_ADD('2000-07-30',INTERVAL 24 year)) ,DATE_ADD(DATE_ADD('2000-07-30',INTERVAL 24 year),INTERVAL -8 day) ,DATE_ADD(DATE_ADD('2000-07-30',INTERVAL 24 year),INTERVAL -2 day)
-