java培训单行函数之日期时间函数
3、日期时间函数
CURDATE() 或 CURRENT_DATE() |
返回当前日期 |
CURTIME() 或 CURRENT_TIME() |
返回当前时间 |
NOW()
SYSDATE() CURRENT_TIMESTAMP() LOCALTIME() LOCALTIMESTAMP() |
返回当前系统日期时间 |
YEAR(date) MONTH(date) DAY(date) HOUR(time) MINUTE(time) SECOND(time) |
返回具体的时间值 |
WEEK(date) WEEKOFYEAR(date) |
返回一年中的第几周 |
DAYOFWEEK() |
返回周几,注意:周日是1,周一是2,。。。周六是7 |
WEEKDAY(date) |
返回周几,注意,周1是0,周2是1,。。。周日是6 |
DAYNAME(date) |
返回星期:MONDAY,TUESDAY.....SUNDAY |
MONTHNAME(date) |
返回月份:January,。。。。。 |
DATEDIFF(date1,date2) TIMEDIFF(time1, time2) |
返回date1 - date2的日期间隔 返回time1 - time2的时间间隔 |
DATE_ADD(datetime, INTERVALE expr type) |
返回与给定日期时间相差INTERVAL时间段的日期时间 |
DATE_FORMAT(datetime ,fmt) |
按照字符串fmt格式化日期datetime值 |
STR_TO_DATE(str, fmt) |
按照字符串fmt对str进行解析,解析为一个日期 |
- (1)DATE_ADD(datetime,INTERVAL expr type)
SELECT DATE_ADD(NOW(), INTERVAL 1 YEAR); SELECT DATE_ADD(NOW(), INTERVAL -1 YEAR); #可以是负数 SELECT DATE_ADD(NOW(), INTERVAL '1_1' YEAR_MONTH); #需要单引号 |
|
表达式类型 |
YEAR_MONTH |
YEAR |
DAY_HOUR |
MONTH |
DAY_MINUTE |
DAY |
DAY_SECOND |
HOUR |
HOUR_MINUTE |
MINUTE |
HOUR_SECOND |
SECOND |
MINUTE_SECOND |
- (2)DATE_FORMAT(datetime ,fmt)和STR_TO_DATE(str, fmt)
格式符 |
说明 |
格式符 |
说明 |
%Y |
4位数字表示年份 |
%y |
表示两位数字表示年份 |
%M |
月名表示月份(January,....) |
%m |
两位数字表示月份(01,02,03。。。) |
%b |
缩写的月名(Jan.,Feb.,....) |
%c |
数字表示月份(1,2,3,...) |
%D |
英文后缀表示月中的天数(1st,2nd,3rd,...) |
%d |
两位数字表示月中的天数(01,02...) |
%e |
数字形式表示月中的天数(1,2,3,4,5.....) |
|
|
%H |
两位数字表示小数,24小时制(01,02..) |
%h和%I |
两位数字表示小时,12小时制(01,02..) |
%k |
数字形式的小时,24小时制(1,2,3) |
%l |
数字形式表示小时,12小时制(1,2,3,4....) |
%i |
两位数字表示分钟(00,01,02) |
%S和%s |
两位数字表示秒(00,01,02...) |
%W |
一周中的星期名称(Sunday...) |
%a |
一周中的星期缩写(Sun.,Mon.,Tues.,..) |
%w |
以数字表示周中的天数(0=Sunday,1=Monday....) |
|
|
%j |
以3位数字表示年中的天数(001,002...) |
%U |
以数字表示年中的第几周,(1,2,3。。)其中Sunday为周中第一天 |
%u |
以数字表示年中的第几周,(1,2,3。。)其中Monday为周中第一天 |
|
|
%T |
24小时制 |
%r |
12小时制 |
%p |
AM或PM |
%% |
表示% |