mysql中的unix_timestamp函数
所有Linux系统文件系统底层存储的都是UTC时间,也就是说都是自1970年0时0分0秒以来UTC标准时间的秒数。在mysql环境下:SELECT UNIX_TIMESTAMP(); 即可以得到 这个时间,是当前时间的秒数。可以逆转:SELECT FROM_UNIXTIME(1496822616);
所有Linux系统文件系统底层存储的都是UTC时间,也就是说都是自1970年0时0分0秒以来UTC标准时间的秒数。
在mysql环境下:SELECT UNIX_TIMESTAMP(); 即可以得到
这个时间,是当前时间的秒数。可以逆转:SELECT FROM_UNIXTIME(1496822616);
TIMESTAMP是mysql数据库中的一种字段类型:内部存储是四个字节;精度达到微妙;转换成UTC时间存储;读取的时候再根据时区转换回来。
TIMESTAMP值可以从1970年一直到2037年,精度为一秒,IMESTAMP值显示尺寸的格式如下表所示:
+---------------+----------------+
| 列类型 | 显示格式 |
| TIMESTAMP(14) | YYYYMMDDHHMMSS |
| TIMESTAMP(12) | YYMMDDHHMMSS |
| TIMESTAMP(10) | YYMMDDHHMM |
| TIMESTAMP(8) | YYYYMMDD |
| TIMESTAMP(6) | YYMMDD |
| TIMESTAMP(4) | YYMM |
| TIMESTAMP(2) | YY |
+---------------+----------------+
你可以在创建表时指定一个任意的显示尺寸,但是定义列长为0或比14大均会被强制定义为列长14。
列长在从1~13范围的奇数值尺寸均被强制为下一个更大的偶数。
补充:获取当前时间,有两种方式:SELECT CURRENT_TIMESTAMP();SELECT NOW();
获取当前时间的秒数,也可以这样写:SELECT UNIX_TIMESTAMP(CURRENT_TIMESTAMP());但是如果SELECT UNIX_TIMESTAMP(NOW());就不可以。
关于sql时间转换的知识,可以参考:http://blog.csdn.net/zouxucong/article/details/71750887
更多推荐
所有评论(0)