MYSQL常用日期时间函数

MYSQL常用日期时间函数

摘要:
NOW() 当前日期时间
CURDATE() 当前日期
CURTIME() 当前时间
DATE(expr) 提取日期部分
TIME(expr) 提取时间部分
YEAR(date) 提取年
MONTH(date) 提取月
DAY(date) 提取日
HOUR(time) 提取小时
MINUTE(time)提取分钟
SECOND(time)提取秒

    DATEDIFF(expr,expr2)    天数间隔
    TIMEDIFF(expr,expr2)    时间间隔
    TIMESTAMPDIFF(interval,expr,expr2)    按照指定单位计算间隔
  1. 日期加
    ADDDATE(expr,days)
    如: SELECT ADDDATE('2007-12-01',10);
    结果: '2007-12-11'

  2. 时间加
    ADDTIME(expr,expr2)
    如: SELECT ADDTIME('2007-12-01 14:59:00','00:00:10');
    结果: '2007-12-01 14:59:10'

  3. 当前日期
    CURDATE()
    如: SELECT CURDATE(), CURDATE()+0;
    结果: 2007-12-01, 20071201

  4. 当前时间
    CURTIME()
    如: SELECT CURTIME(), CURTIME()+0;
    结果: 14:56:11, 145611

  5. 提取表达式中的日期部分
    DATE(expr)
    如: SELECT DATE('2007-12-01 14:59:00');
    结果: 2007-12-01

  6. 计算起始时间expr和结束时间expr2之间的天数
    DATEDIFF(expr, expr2)
    如: SELECT DATEDIFF('2007-12-10', '2007-12-01 11:22:33');
    结果: 9

  7. 日期加减运算
    DATE_ADD(date,INTERVAL expr type)
    DATE_SUB(date,INTERVAL expr type)
    如: SELECT DATE_ADD('2007-12-01 11:22:33', INTERVAL '10 10'DAY_HOUR);
    结果: 2007-12-11 21:22:33

  8. 时间格式化
    DATE_FORMAT(date,format)
    如: SELECT DATE_FORMAT('2007-12-01 11:22:33', '%W %M %Y');
    结果: Saturday December 2007

  9. 提取日期中的日
    DAY(date)
    如: SELECT DAY('2007-12-13');
    结果: 13

  10. 计算某日为星期几
    DAYNAME(date)
    如: SELECT DAYNAME('2007-12-13');
    结果: Thursday

  11. DAYOFMONTH(date)
    同DAY(date)

  12. 计算某日的星期索引( 1=周日, 2=周一... )
    DAYOFWEEK(date)
    如: SELECT DAYOFWEEK('2007-12-13');
    结果: 5

  13. 计算某日在该年中的天数
    DAYOFYEAR(date)
    如: SELECT DAYOFYEAR('2007-12-13');
    结果: 347

  14. 提取日期中指定的部分
    EXTRACT(type FROM date)
    如: SELECT EXTRACT(YEAR_MONTH FROM '2007-12-13');
    结果: 200712

  15. 构造日期
    MAKEDATE(year,dayofyear)
    如: SELECT MAKEDATE(2007,31), MAKEDATE(2007,32);
    结果: 2007-01-31, 2007-02-01

  16. 构造时间
    MAKETIME(hour,minute,second)
    如: SELECT MAKETIME(22,12,13);
    结果: 22:12:13

  17. 提取日期中的小时
    HOUR(time)
    如: SELECT HOUR('2007-12-01 14:59:00');
    结果: 14

  18. MINUTE(time) 提取分钟
    MONTH(date) 提取月份
    SECOND(time) 提取秒
    TIME(expr) 提取时间部分

  19. 当前日期时间
    NOW()
    如: SELECT NOW();
    结果: 2007-12-01 14:59:00

  20. 计算起始时间expr与结束时间expr2之间的时间间隔
    TIMEDIFF(expr,expr2)
    如: SELECT TIMEDIFF('2007-12-01 15:59:00', '2007-12-01 14:59:00');
    结果: 01:00:00

  21. 按照指定单位计算间隔
    TIMESTAMPDIFF(interval,expr,expr2)
    如: SELECT TIMESTAMPDIFF(MINUTE, '2007-12-01 01:00:00', '2007-12-01 02:01:00');
    结果: 61

你可能感兴趣的:(MYSQL常用日期时间函数)