您的位置:首页 > 运维架构 > Linux

Mysql日期时间类型(DATE,DATETIME,TIMESTAMP)和函数及与linux系统时间之间的转换(UNIX_TIMESTAMP、FROM_UNIXTIME)

2015-07-06 10:54 711 查看
mysql的日期,时间类型:

类型 最小值 最大值

DATE 1000-01-01 9999-12-31 不支持默认时间为当前系统时间

DATETIME 10000-01-01 00:00:00 9999-12-31 23:59:59 不支持默认时间为当前系统时间

TIMESTAMP 19700101080001 2038年的某个时刻 支持默认时间为当前系统时间

/*

TIMESTAMP这个类型和Linux下的time_t类型通过FROM_UNIXTIME和UNIX_TIMESTAMP之间可以转换。默认值可以设置为CURRENT_TIMESTAMP,表示当前时间。

在表中将某个字段设置为记录变更时的系统时间,这样我们就可以看到这条记录最后的变更时间:

TIMESTAMP NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP

*/

TIME -838:59:59 838:59:59

YEAR 1901 2155

mysql的日期,时间函数及与Linux系统时间之间的转换:

1、获取当前日期:

CURRENT_DATE()或者CURDATE()

2、获取当前时间:

CURRENT_TIME()或者CURTIME()

3、获取当前日期和时间

NOW()或者CURRENT_TIMESTAMP()

4、linux/unix时间戳和mysql时间日期类型之间的转换:

UNIX_TIMESTAMP(NOW()) //将mysql的datetime转换成linux/unix的时间戳;日期时间

UNIX_TIMESTAMP(DATE(NOW())) //将mysql的date转换成linux/unix的日期。

UNIX_TIMESTAMP(TIME(NOW())) //将mysql的time转换成linux/unix的时间。(用问题)

FROM_UNIXTIME(time_t) //将unix的时间戳转换成mysql的datetime;日期时间

DATE(FROM_UNIXTIME(time_t)) //日期

TIME(FROM_UNIXTIME(time_t)) //时间

IP地址和数字之间的转换::

1、将IP地址转化为数字:

select inet_aton('192.168.1.103');

2、将数字转化为IP地址:

select inet_ntoa(3525181543);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: