MySQL内置函数中的日期和时间函数详解
下面的例子使用了时间函数。以下询问选择了最近的 30天内所有带有date_col 值的记录:
注意,这个询问也能选择将来的日期记录。 用于日期值的函数通常会接受时间日期值而忽略时间部分。而用于时间值的函数通常接受时间日期值而忽略日期部分。 返回各自当前日期或时间的函数在每次询问执行开始时计算一次。这意味着在一个单一询问中,对诸如NOW() 的函数多次访问总是会得到同样的结果(未达到我们的目的,单一询问也包括对存储程序或触发器和被该程序/触发器调用的所有子程序的调用 )。这项原则也适用于 CURDATE()、 CURTIME()、 UTC_DATE()、 UTC_TIME()、UTC_TIMESTAMP(),以及所有和它们意义相同的函数。 CURRENT_TIMESTAMP()、 CURRENT_TIME()、 CURRENT_DATE()以及FROM_UNIXTIME()函数返回连接当前时区内的值,这个值可用作time_zone系统变量的值。此外, UNIX_TIMESTAMP() 假设其参数为一个当前时区的时间日期值。 以下函数的论述中返回值的范围会请求完全日期。 若一个日期为“零” 值,或者是一个诸如'2001-11-00'之类的不完全日期, 提取部分日期值的函数可能会返回 0。 例如, DAYOFMONTH('2001-11-00') 会返回0。 ADDDATE(date,INTERVAL expr type) ADDDATE(expr,days) 当被第二个参数的INTERVAL格式激活后, ADDDATE()就是DATE_ADD()的同义词。相关函数SUBDATE() 则是DATE_SUB()的同义词。对于INTERVAL参数上的信息 ,请参见关于DATE_ADD()的论述。
若 days 参数只是整数值,则 MySQL 5.1将其作为天数值添加至 expr。
◆ ADDTIME(expr,expr2) ADDTIME()将 expr2添加至expr 然后返回结果。 expr 是一个时间或时间日期表达式,而expr2 是一个时间表达式。
◆ CONVERT_TZ(dt,from_tz,to_tz) CONVERT_TZ() 将时间日期值dt 从from_tz 给出的时区转到to_tz给出的时区,然后返回结果值。 在从若from_tz 到UTC的转化过程中,该值超出 TIMESTAMP 类型的被支持范围,那么转化不会发生。
注释:若要使用诸如 'MET'或 'Europe/Moscow'之类的指定时间区,首先要设置正确的时区表。 (编辑:徐州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |