首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >转换毫秒

转换毫秒
EN

Stack Overflow用户
提问于 2019-08-19 12:29:01
回答 1查看 135关注 0票数 1

我在一个表中有一个列,它包含的时间以毫秒(2147483647)为单位,或者我已经告诉过了。我正试着把它转换成实际时间(人类时间),但还没有那么幸运。我试过所有我认为会有帮助的东西,尽管我在谷歌和这里发现的任何东西都没有帮助。

代码语言:javascript
复制
SELECT arrivalTime, FROM_UNIXTIME(uploadTime), "; //UNIX_TIMESTAMP(uploadTime) * 1000 // UNIX_TIMESTAMP() * 1000

arrivalTime是以不同的时间格式上传的,但我已经做到了。我还有一个使用不同时间格式的不同的表,它也在工作,但我将它包含在我的帖子中,以防它可以用作引用,或者有人可能会发现它在他们的代码中有用。

代码语言:javascript
复制
Date_Add('1970-01-01 0:0:0', INTERVAL(uploadTime/1000 - (timeZoneOffset*60)) SECOND) AS uploadTime

任何帮助或建议都将不胜感激!

PS:当前的查询给了我这个2038-01-18 22:14:07的时间,这显然是错误的。我也试过这个

代码语言:javascript
复制
FROM_UNIXTIME(uploadTime/1000);

但也没有做我想做的事

好的,问了一遍后,我发现这2147483647是来自calendar.API的Android getTimeInMillis。希望这能帮到任何人吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-19 12:57:50

我会在Server中这样做

代码语言:javascript
复制
DateAdd(Second, (2147483647/1000), CAST('1970-01-01 00:00:00' AS datetime))  AT TIME ZONE 'Central European Standard Time' AS uploadTime

这给了我输出:

在更新了来自Android getTimeInMillis()的毫秒之后:

在上面的函数中使用这毫秒:

代码语言:javascript
复制
DateAdd(Second, (1566302250040/1000), CAST('1970-01-01 00:00:00' AS datetime))  AT TIME ZONE 'Central European Standard Time'

结果进入2019-08-20 11:57:30.000 +02:00,这似乎是正确的。

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

https://stackoverflow.com/questions/57556784

复制
相关文章

相似问题

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