表
id | name | date | add_time |
---|---|---|---|
1 | 手机 | 2020-06-23 00:50:00 | 1592992778 |
2 | 书 | 2020-06-23 00:00:00 | 1592992778 |
ADDDATE(expr,days):向expr中添加days天
SELECT ADDDATE(`date`,5) FROM `order` WHERE id = 1; -- 2020-06-28 00:50:00
ADDDATE(date,INTERVAL expr unit):向date中添加expr个unit
SELECT ADDDATE(`date`,INTERVAL 5 DAY) FROM `order` WHERE id = 1; -- 2020-06-28 00:50:00
SELECT ADDDATE(`date`,INTERVAL 5 YEAR) FROM `order` WHERE id = 1; -- 2025-06-23 00:50:00
ADDTIME(expr1,expr2):向expr1中添加expr2时间
SELECT ADDTIME(`date`,5) FROM `order` WHERE id = 1; -- 2020-06-23 00:50:05
SELECT ADDTIME(`date`,'01:01:05') FROM `order` WHERE id = 1; -- 2020-06-23 01:51:05
CURDATE():返回当前的日期
SELECT CURDATE(); -- 2020-06-24
CURTIME():返回当前的时间
SELECT CURTIME(); -- 16:01:33
DATE_ADD(date,INTERVAL expr unit):向date中添加expr个unit
SELECT DATE_ADD(`date`,INTERVAL 5 DAY) FROM `order` WHERE id = 1; -- 2020-06-28 00:50:00
SELECT DATE_ADD(`date`,INTERVAL 5 YEAR) FROM `order` WHERE id = 1; -- 2025-06-23 00:50:00
DATE_FORMAT(date,format):按format格式化date
SELECT DATE_FORMAT(`date`,'%y/%m/%d') FROM `order` WHERE id = 1; -- 20/06/23
DATE_SUB(date,INTERVAL expr unit):向date中减去expr个unit
SELECT DATE_SUB(`date`,INTERVAL 1 DAY) FROM `order` WHERE id = 1; -- 2020-06-22 00:50:00
DAYOFWEEK(date):返回date对应的星期
SELECT DAYOFWEEK(`date`) FROM `order` WHERE id = 1; -- 3
-- 星期日->1 星期一->2 星期六 ->7
DAYOFMONTH(date):返回date月中对应的天
SELECT DAYOFMONTH(`date`) FROM `order` WHERE id = 1; -- 23
DAYOFYEAR(date):返回date年中对应的天
SELECT DAYOFYEAR(`date`) FROM `order` WHERE id = 1; -- 175
DAYNAME(date):返回date对应的星期名
MONTHNAME(date) :返回date对应的月份名
SELECT DAYNAME(`date`) FROM `order` WHERE id = 1; -- Tuesday
SELECT MONTHNAME(`date`) FROM `order` WHERE id = 1; -- June
FROM_UNIXTIME(unix_timestamp):将时间戳unix_timestamp格式化为时间
FROM_UNIXTIME(unix_timestamp,format):将时间戳unix_timestamp按format格式化为时间
SELECT UNIX_TIMESTAMP(date):将date转为unix时间戳
SELECT FROM_UNIXTIME(`add_time`) FROM `order` WHERE id = 1; -- 2020-06-24 17:59:38
SELECT FROM_UNIXTIME(`add_time`,'%d') FROM `order` WHERE id = 1; -- 24
SELECT UNIX_TIMESTAMP('2020-01-22') -- 1579622400
注意:mysql中的unix时间戳是10位,最后一位到秒,而java中的时间戳13位,最后一位是毫秒。
HOUR(time):返回time中的小时
MINUTE(time):返回time中的分钟
SECOND(time):返回time中的秒
SELECT HOUR(`date`) FROM `order` WHERE id = 1; -- 0
SELECT HOUR('14:42:56') -- 14
SELECT MINUTE(`date`) FROM `order` WHERE id = 1; -- 50
SELECT MINUTE('14:42:56'); -- 42
SELECT SECOND(`date`) FROM `order` WHERE id = 1; -- 0
SELECT SECOND('14:42:56'); -- 56
DAY(date):返回date中的天
MONTH(date):返回date中的月
QUARTER(date):返回date中对应的季
WEEK(date):返回date中的周
YEAR(date):返回date中的年
SELECT DAY(`date`) FROM `order` WHERE id = 1; -- 23
SELECT MONTH(`date`) FROM `order` WHERE id = 1; -- 6
SELECT QUARTER(`date`) FROM `order` WHERE id = 1; -- 2
SELECT WEEK(`date`) FROM `order` WHERE id = 1; -- 25
SELECT YEAR(`date`) FROM `order` WHERE id = 1; -- 2020
NOW():返回当前时间
SELECT NOW(); -- 2020-06-24 17:56:33
format格式
SELECT DATE_FORMAT(`date`,'%a') FROM `order` WHERE id = 1; -- Tue
格式 | 描述 | 示例 |
---|---|---|
%a | 缩写星期名 | Tue |
%b | 缩写月名 | Jun |
%c | 月,数值 | 6 |
%D | 带有英文前缀的月中的天 | 23rd |
%d | 月的天,数值(00-31) | 23 |
%e | 月的天,数值(0-31) | 23 |
%f | 微秒 | 000000 |
%H | 小时 (00-23) | 00 |
%h | 小时 (01-12) | 12 |
%I | 小时 (01-12) | 12 |
%i | 分钟,数值(00-59) | 50 |
%j | 年的天 (001-366) | 175 |
%k | 小时 (0-23) | 0 |
%l | 小时 (1-12) | 12 |
%M | 月名 | June |
%m | 月,数值(00-12) | 06 |
%p | AM 或 PM | AM |
%r | 时间,12-小时(hh:mm:ss AM 或 PM) | 12:50:00 AM |
%S | 秒(00-59) | 00 |
%s | 秒(00-59) | 00 |
%T | 时间, 24-小时 (hh:mm:ss) | 00:50:00 |
%U | 周 (00-53) 星期日是一周的第一天 | 25 |
%u | 周 (00-53) 星期一是一周的第一天 | 26 |
%V | 周 (01-53) 星期日是一周的第一天,与 %X 使用 | 25 |
%v | 周 (01-53) 星期一是一周的第一天,与 %x 使用 | 26 |
%W | 星期名 | Tuesday |
%w | 周的天 (0=星期日, 6=星期六) | 2 |
%X | 年,其中的星期日是周的第一天,4 位,与 %V 使用 | 2020 |
%x | 年,其中的星期一是周的第一天,4 位,与 %v 使用 | 2020 |
%Y | 年,4 位 | 2020 |
%y | 年,2 位 | 20 |
unit值
SELECT ADDDATE(`date`,INTERVAL 5 DAY) FROM `order` WHERE id = 1;
-- 2020-06-23 00:50:00.000005
值 | 含义 | 示例 |
---|---|---|
MICROSECOND | 微秒 | 2020-06-23 00:50:00.000005 |
SECOND | 秒 | 2020-06-23 00:50:05 |
MINUTE | 分 | 2020-06-23 00:55:00 |
HOUR | 小时 | 2020-06-23 05:50:00 |
DAY | 天 | 2020-06-28 00:50:00 |
WEEK | 周 | 2020-07-28 00:50:00 |
MONTH | 月 | 2020-11-23 00:50:00 |
QUARTER | 季 | 2021-09-23 00:50:00 |
YEAR | 年 | 2025-06-23 00:50:00 |