获取日期
NOW():获取当前日期
SELECT NOW() #当前日期 2020-10-23 11:10:02
SELECT CURDATE() #当前年月日 2020-10-23
SELECT CURTIME() #当前时间 11:10:02
日期格式化
DATE_FORMAT(data, format):格式化日期
STR_TO_DATE(str, format):将字符串转换为日期
SELECT DATE_FORMAT(NOW(),'%Y-%m-%d %H:%i:%s') #格式化年月日 2020-10-23 11:24:27
SELECT DATE_FORMAT('2020-10-23 11:24:27','%y-%m-%d') #格式化 20-10-23
SELECT STR_TO_DATE('2018-06-01','%Y-%m-%d') #将字符串转换成日期
获取日期指定部分
EXTRACT(unit FROM date):返回日期/时间的单独部分
SELECT DATE(NOW()) #返回时间的日期部分 2020-10-23
SELECT YEAR(NOW()) #当前年 2020
SELECT MONTH(NOW()) #当前月 10
SELECT DAY(NOW()) #当前日 23
SELECT EXTRACT(YEAR FROM NOW()) #日期当前年
SELECT EXTRACT(MONTH FROM NOW()) #日期当前月
SELECT EXTRACT(DAY FROM NOW()) #日期当前月
format各种格式
%W 星期名字(Sunday……Saturday)
%D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)
%Y 年, 数字, 4 位
%y 年, 数字, 2 位
%a 缩写的星期名字(Sun……Sat)
%d 月份中的天数, 数字(00……31)
%e 月份中的天数, 数字(0……31)
%m 月, 数字(01……12)
%c 月, 数字(1……12)
%b 缩写的月份名字(Jan……Dec)
%j 一年中的天数(001……366)
%H 小时(00……23)
%k 小时(0……23)
%h 小时(01……12)
%I 小时(01……12)
%l 小时(1……12)
%i 分钟, 数字(00……59)
%r 时间,12 小时(hh:mm:ss [AP]M)
%T 时间,24 小时(hh:mm:ss)
%S 秒(00……59)
%s 秒(00……59)
%p AM或PM
%w 一个星期中的天数(0=Sunday ……6=Saturday )
%U 星期(0……52), 这里星期天是星期的第一天
%u 星期(0……52), 这里星期一是星期的第一天
%% 一个文字“%”。
unit各种参数
MICROSECOND:微秒
SECOND:秒
MINUTE:分
HOUR:时
DAY:天
WEEK:周
MONTH:月
QUARTER:季
YEAR:年
SECOND_MICROSECOND
MINUTE_MICROSECOND
MINUTE_SECOND
HOUR_MICROSECOND
HOUR_SECOND
HOUR_MINUTE
DAY_MICROSECOND
DAY_SECOND
DAY_MINUTE
DAY_HOUR
YEAR_MONTH