1.unix_timestamp
将时间转化为时间戳。将 date 类型数据转换成 timestamp 时间戳形式
默认取当前时间的时间戳
mysql> select unix_timestamp();
+——————+
| unix_timestamp() |
+——————+
| 1436775578 |
+——————+
1 row in set (0.01 sec)
mysql> select unix_timestamp('2015-07-13 16:20:20');
+—————————————+
| unix_timestamp('2015-07-13 16:20:20') |
+—————————————+
| 1436775620 |
+—————————————+
1 row in set (0.00 sec)
2.from_unixtime
将时间戳 timestamp 形式整数 转化为 date 类型
mysql> select from_unixtime(1436775620);
+—————————+
| from_unixtime(1436775620) |
+—————————+
| 2015-07-13 16:20:20 |
+—————————+
1 row in set (0.00 sec)
当然也可以指定输出的时间格式:
mysql> select from_unixtime(1436775620,'%Y%m%d');
+————————————+
| from_unixtime(1436775620,'%Y-%m-%d') |
+————————————+
| 2015-07-13 |
+————————————+
3.关于mysql 时间戳的限制
目前timestamp 所能表示的范围在 1970 - 2038之间 。
超过这个范围 得到的时间将会溢出 得到的时间是null.
mysql> select from_unixtime(0);
+———————+
| from_unixtime(0) |
+———————+
| 1970-01-01 08:00:00 |
+———————+
mysql> select from_unixtime(2247483647);
+—————————+
| from_unixtime(2247483647) |
+—————————+
| 2038-01-19 11:14:07 |
+—————————+
1 row in set (0.00 sec)
新闻热点
疑难解答
图片精选