mysql - Convertint 毫秒至今

标签 mysql sql

我在表中有一列包含以毫秒为单位的时间 (2147483647),或者我已经告诉过。我正在尝试将其转换为实际时间(人类时间),但并没有那么幸运。我已经尝试了所有我认为会有所帮助的方法,尽管我在谷歌和此处找到的所有方法都没有帮助。

SELECT arrivalTime, FROM_UNIXTIME(uploadTime), "; //UNIX_TIMESTAMP(uploadTime) * 1000 // UNIX_TIMESTAMP() * 1000

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

Date_Add('1970-01-01 0:0:0', INTERVAL(uploadTime/1000 - (timeZoneOffset*60)) SECOND) AS uploadTime

如有任何帮助或建议,我们将不胜感激!!!

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

FROM_UNIXTIME(uploadTime/1000);

但也没有做我想做的事

PSS: 好的,问了一圈才知道这个2147483647是Android getTimeInMillis from calendar.API。希望对任何人有帮助?

最佳答案

我会在 SQL Server 中做这样的事情

DateAdd(Second, (2147483647/1000), CAST('1970-01-01 00:00:00' AS datetime))  AT TIME ZONE 'Central European Standard Time' AS uploadTime


这给了我输出:
enter image description here

更新后,毫秒来自 Android getTimeInMillis():
enter image description here
在我上面的函数中使用这个毫秒数:

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 这似乎是正确的。

关于mysql - Convertint 毫秒至今,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57556784/

相关文章:

javascript - 如何在 PHP 和/或 Javascript 中检查 CSV 文件是否损坏?

php - 使用 PHP 跳过第一行将 csv 上传到 mysql

php - 从 MySQL/PHP 获取嵌套/分层 JSON

php - 使用 CodeIgniter 插入点? (防止在 POINT 值周围添加引号?)

sql - 根据条件逻辑更新表列值

sql - 使用Powershell将SQL Server实例添加到中央管理服务器组

php - "Your PHP installation appears to be missing the MySQL extension which is required by WordPress."

mysql - 如何使用不相关表中的列数据更新列 - MySQL

mysql - 使用 group by 和 having 子句获取多个最大行

mysql - 将 mysql 数据库导入 Bigquery 的最佳方法