首页 > 数据库 > MySQL > 正文

MySQL的Data_ADD函数与日期格式化函数说明

2024-07-24 12:43:44
字体:
来源:转载
供稿:网友
    DATE_ADD(date,INTERVAL expr type) DATE_SUB(date,INTERVAL expr type)

    这些函数执行日期运算。 date 是一个 DATETIME 或DATE值,用来指定起始时间。 expr 是一个表达式,用来指定从起始日期添加或减去的时间间隔值。  Expr是一个字符串;对于负值的时间间隔,它可以以一个 ‘-'开头。 type 为关键词,它指示了表达式被解释的方式。 

    关键词INTERVA及 type 分类符均不区分大小写。

    以下表显示了typeexpr 参数的关系:

    type

    预期的 expr 格式

    MICROSECOND

    MICROSECONDS

    SECOND

    SECONDS

    MINUTE

    MINUTES

    HOUR

    HOURS

    DAY

    DAYS

    WEEK

    WEEKS

    MONTH

    MONTHS

    QUARTER

    QUARTERS

    YEAR

    YEARS

    SECOND_MICROSECOND

    'SECONDS.MICROSECONDS'

    MINUTE_MICROSECOND

    'MINUTES.MICROSECONDS'

    MINUTE_SECOND

    'MINUTES:SECONDS'

    HOUR_MICROSECOND

    'HOURS.MICROSECONDS'

    HOUR_SECOND

    'HOURS:MINUTES:SECONDS'

    HOUR_MINUTE

    'HOURS:MINUTES'

    DAY_MICROSECOND

    'DAYS.MICROSECONDS'

    DAY_SECOND

    'DAYS HOURS:MINUTES:SECONDS'

    DAY_MINUTE

    'DAYS HOURS:MINUTES'

    DAY_HOUR

    'DAYS HOURS'

    YEAR_MONTH

    'YEARS-MONTHS'

    MySQL 允许任何expr 格式中的标点分隔符。表中所显示的是建议的 分隔符。若 date 参数是一个 DATE 值,而你的计算只会包括 YEAR、MONTH和DAY部分(即, 没有时间部分), 其结果是一个DATE 值。否则,结果将是一个 DATETIME值。

    若位于另一端的表达式是一个日期或日期时间值 , 则INTERVAL expr type只允许在 + 操作符的两端。对于 –操作符,  INTERVAL expr type 只允许在其右端,原因是从一个时间间隔中提取一个日期或日期时间值是毫无意义的。 (见下面的例子)。

    mysql> SELECT '1997-12-31 23:59:59' + INTERVAL 1 SECOND;

            -> '1998-01-01 00:00:00'

    mysql> SELECT INTERVAL 1 DAY + '1997-12-31';

            -> '1998-01-01'

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表