0%

常用MySQL日期时间处理函数

FROM_UNIXTIME

1
FROM_UNIXTIME(unix_timestamp[,format])

将时间戳转换成日期时间表示。如’YYYY-MM-DD hh:mm:ss’ 或 YYYYMMDDhhmmss


NOW

1
NOW([fsp])

返回当前时间的日期时间表示,如’YYYY-MM-DD hh:mm:ss’ 或 YYYYMMDDhhmmss,取决于执行时的上下文环境,如下

1
2
3
4
mysql> SELECT NOW();
-> '2007-12-15 23:50:26'
mysql> SELECT NOW() + 0;//此处+0,所以被当成数值处理
-> 20071215235026.000000

参数 fsp (fractional seconds precision),可指定返回秒的精度,取值 0-6
NOW()与CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP是同义词。


UNIX_TIMESTAMP

1
UNIX_TIMESTAMP([date])

返回当前时间或指定日期的时间戳,如

1
2
mysql> SELECT UNIX_TIMESTAMP('2015-11-13 10:20:19.012');
-> 1447431619.012

DATE_FORMAT

1
DATE_FORMAT(date,format)

日期格式化


TO_DAYS

1
TO_DAYS(date)

返回某一日期距离 0 年的总天数,如下面的近似计算应该是,2007365 + 1030 + 7 = 732862,有一些差距。

1
2
mysql> SELECT TO_DAYS('2007-10-07');
-> 733321