首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从时间戳中获取本地时间

从时间戳中获取本地时间
EN

Stack Overflow用户
提问于 2017-04-12 05:55:11
回答 1查看 31关注 0票数 1

我已经更新了一个列,声明为updated时间戳,它是惟一的时间戳类型列。

当我做select updated from pushinfo;

我得到了

代码语言:javascript
复制
+---------------------+
| updated             |
+---------------------+
| 2017-04-11 15:33:46 |
| 2017-04-11 15:35:02 |
| 2017-04-12 10:15:54 |
+---------------------+

当我使用select FROM_UNIXTIME(updated) from pushinfo;

我得到了

代码语言:javascript
复制
| FROM_UNIXTIME(updated) |
+------------------------+
| NULL                   |
| NULL                   |
| NULL                   |

为什么FROM_UNIXTIME不能工作?

当我使用这个查询时

代码语言:javascript
复制
conn.query(' select updated from pushinfo')

我正在更新像YYYY-MM-DDTHH:MM:SS.000Z这样的东西,有什么问题吗?

如何获得HH:MM:SS YYYY-MM-DD等格式?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-12 05:57:37

FROM_UNIXTIME需要一个Unix时间戳参数(即一个整数,即自Unix以来的秒数)。你必须使用格式()。这是因为即使列被定义为时间戳,MySQL还是以日期而不是时间戳的形式返回值。这是时间戳类型列的MySQL的默认行为。要获得实际的时间戳值,必须使用时间戳()

所以你的查询就像

代码语言:javascript
复制
conn.query(' select DATE_FORMAT(updated, "%H:%i:%s %Y-%m-%d") from pushinfo')

选择updated列时所得到的是MySQL服务器默认日期格式中该列的值。

你问题的标题与其馀部分无关。您永远不会从Unix时间戳中获得本地时间,因为这总是以Zulu时间(即UTC)表示的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43361350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档