MySQL内置函数中的日期和时间函数详解Word文档下载推荐.docx

上传人:b****3 文档编号:14353352 上传时间:2022-10-22 格式:DOCX 页数:20 大小:180.17KB
下载 相关 举报
MySQL内置函数中的日期和时间函数详解Word文档下载推荐.docx_第1页
第1页 / 共20页
MySQL内置函数中的日期和时间函数详解Word文档下载推荐.docx_第2页
第2页 / 共20页
MySQL内置函数中的日期和时间函数详解Word文档下载推荐.docx_第3页
第3页 / 共20页
MySQL内置函数中的日期和时间函数详解Word文档下载推荐.docx_第4页
第4页 / 共20页
MySQL内置函数中的日期和时间函数详解Word文档下载推荐.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

MySQL内置函数中的日期和时间函数详解Word文档下载推荐.docx

《MySQL内置函数中的日期和时间函数详解Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《MySQL内置函数中的日期和时间函数详解Word文档下载推荐.docx(20页珍藏版)》请在冰豆网上搜索。

MySQL内置函数中的日期和时间函数详解Word文档下载推荐.docx

若一个日期为“零”值,或者是一个诸如'

2001-11-00'

之类的不完全日期,提取部分日期值的函数可能会返回0。

例如,DAYOFMONTH('

)会返回0。

ADDDATE(date,INTERVALexprtype)ADDDATE(expr,days)

当被第二个参数的INTERVAL格式激活后,ADDDATE()就是DATE_ADD()的同义词。

相关函数SUBDATE()则是DATE_SUB()的同义词。

对于INTERVAL参数上的信息,请参见关于DATE_ADD()的论述。

SELECTDATE_ADD('

1998-01-02'

INTERVAL31DAY);

->

'

1998-02-02'

SELECTADDDATE('

若days参数只是整数值,则MySQL5.1将其作为天数值添加至expr。

31);

◆ADDTIME(expr,expr2)

ADDTIME()将expr2添加至expr然后返回结果。

expr是一个时间或时间日期表达式,而expr2是一个时间表达式。

SELECTADDTIME('

1997-12-3123:

59:

59.999999'

 

11:

1:

1.000002'

);

1998-01-0201:

01:

01.000001'

00:

00.999999'

'

02:

00.999998'

03:

01.999997'

◆CONVERT_TZ(dt,from_tz,to_tz)

CONVERT_TZ()将时间日期值dt从from_tz给出的时区转到to_tz给出的时区,然后返回结果值。

在从若from_tz到UTC的转化过程中,该值超出TIMESTAMP类型的被支持范围,那么转化不会发生。

SELECTCONVERT_TZ('

2004-01-0112:

00'

'

GMT'

MET'

2004-01-0113:

+00:

+10:

2004-01-0122:

注释:

若要使用诸如'

或'

Europe/Moscow'

之类的指定时间区,首先要设置正确的时区表。

◆CURDATE()

将当前日期按照'

YYYY-MM-DD'

或YYYYMMDD格式的值返回,具体格式根据函数用在字符串或是数字语境中而定。

SELECTCURDATE();

1997-12-15'

SELECTCURDATE()+0;

19971215

◆CURRENT_DATECURRENT_DATE()

CURRENT_DATE和CURRENT_DATE()是的同义词.

◆CURTIME()

将当前时间以'

HH:

MM:

SS'

或HHMMSS的格式返回,具体格式根据函数用在字符串或是数字语境中而定。

SELECTCURTIME();

23:

50:

26'

SELECTCURTIME()+0;

235026

◆CURRENT_TIME,CURRENT_TIME()

CURRENT_TIME和CURRENT_TIME()是CURTIME()的同义词。

◆CURRENT_TIMESTAMP,CURRENT_TIMESTAMP()

CURRENT_TIMESTAMP和CURRENT_TIMESTAMP()是NOW()的同义词。

◆DATE(expr)

提取日期或时间日期表达式expr中的日期部分。

SELECTDATE('

2003-12-3101:

03'

2003-12-31'

◆DATEDIFF(expr,expr2)

DATEDIFF()返回起始时间expr和结束时间expr2之间的天数。

Expr和expr2为日期或date-and-time表达式。

计算中只用到这些值的日期部分。

SELECTDATEDIFF('

59'

1997-12-30'

1

1997-11-3023:

1997-12-31'

-31

◆DATE_ADD(date,INTERVALexprtype)DATE_SUB(date,INTERVALexprtype)

这些函数执行日期运算。

date是一个DATETIME或DATE值,用来指定起始时间。

expr是一个表达式,用来指定从起始日期添加或减去的时间间隔值。

Expr是一个字符串;

对于负值的时间间隔,它可以以一个‘-’开头。

type为关键词,它指示了表达式被解释的方式。

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

以下表显示了type和expr参数的关系:

MySQL允许任何expr格式中的标点分隔符。

表中所显示的是建议的分隔符。

若date参数是一个DATE值,而你的计算只会包括YEAR、MONTH和DAY部分(即,没有时间部分),其结果是一个DATE值。

否则,结果将是一个DATETIME值。

若位于另一端的表达式是一个日期或日期时间值,则INTERVALexprtype只允许在+操作符的两端。

对于–操作符, 

INTERVALexprtype只允许在其右端,原因是从一个时间间隔中提取一个日期或日期时间值是毫无意义的。

(见下面的例子)。

SELECT'

+INTERVAL1SECOND;

1998-01-0100:

SELECTINTERVAL1DAY+'

;

1998-01-01'

-INTERVAL1SECOND;

INTERVAL1SECOND);

INTERVAL1DAY);

1998-01-0123:

INTERVAL'

1'

MINUTE_SECOND);

SELECTDATE_SUB('

DAY_SECOND);

1997-12-3022:

58:

-110'

DAY_HOUR);

1997-12-3014:

1997-12-02'

1992-12-3123:

59.000002'

1.999999'

SECOND_MICROSECOND);

1993-01-0100:

若你指定了一个过于短的时间间隔值(不包括type关键词所预期的所有时间间隔部分),MySQL假定你已经省去了时间间隔值的最左部分。

例如,你指定了一种类型的DAY_SECOND,expr的值预期应当具有天、小时、分钟和秒部分。

若你指定了一个类似'

10'

的值,MySQL假定天和小时部分不存在,那么这个值代表分和秒。

换言之,'

DAY_SECOND被解释为相当于'

MINUTE_SECOND。

这相当于MySQL将TIME值解释为所耗费的时间而不是日时的解释方式。

假如你对一个日期值添加或减去一些含有时间部分的内容,则结果自动转化为一个日期时间值:

1999-01-01'

INTERVAL1DAY);

1999-01-02'

INTERVAL1HOUR);

1999-01-0101:

假如你使用了格式严重错误的日期,则结果为NULL。

假如你添加了 

MONTH、YEAR_MONTH或YEAR,而结果日期中有一天的日期大于添加的月份的日期最大限度,则这个日期自动被调整为添加月份的最大日期:

1998-01-30'

INTERVAL1MONTH);

1998-02-28'

◆DATE

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1