日期函数
- 常见的日期函数 | 函数 | 用法 | | —- | —- | | 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, INTERVAL expr type) | 返回与给定日期时间相差INTERVAL时间段的日期时间 | | DATE_FORMAT(datetime ,fmt) | 按照字符串fmt格式化日期datetime值 | | STR_TO_DATE(str, fmt) | 按照字符串fmt对str进行解析,解析为一个日期 |
- DATE_ADD(datetime,INTERVAL expr type)说明 | 参数类型 | 参数类型 | | —- | —- | | YEAR | YEAR_MONTH | | MONTH | DAY_HOUR | | DAY | DAY_MINUTE | | HOUR | DAY_SECOND | | MINUTE | HOUR_MINUTE | | SECOND | HOUR_SECOND | | | MINUTE_SECOND |
- 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 | %% | 表示% |