当我运行mysql查询以找出感兴趣的表的created_at时间时:

select created_at from snapshots;


它返回:

+---------------------+
| created_at          |
+---------------------+
| 2013-11-12 23:05:49 |
| 2013-11-15 01:02:08 |
| 2013-11-20 00:05:05 |
| 2013-11-20 00:25:38 |
| 2013-11-20 00:25:38 |
| 2013-11-20 00:41:11 |
| 2013-11-20 00:41:11 |
| 2013-11-26 22:43:47 |
| 2013-12-02 20:27:22 |
| 2013-12-02 20:27:22 |
| 2013-12-02 23:16:54 |
| 2013-12-02 23:16:54 |
| 2013-12-12 00:39:17 |
| 2013-12-12 00:40:21 |
| 2013-12-12 00:42:28 |
| 2013-12-12 00:46:33 |
| 2013-12-12 01:24:26 |
| 2013-12-12 01:26:34 |
+---------------------+


我如何在没有各自相关的时区信息的情况下(通过另一个程序)解析该时间? MySQL为什么不存储区域信息或为什么不在字符串值中显示区域信息?

最佳答案

SELECT @@time_zone;会告诉您服务器在哪个TZ中运行。

如果是DATETIME字段,则不存储任何时区数据。本质上是纯文本。运行NOW()将使用服务器的TZ。

如果是TIMESTAMP字段,则将其存储为UTC,但将返回并转换为服务器的时区。

关于mysql - 如何找出mysql使用的时区?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20616896/

10-16 15:14