php - 使用 SQL 将 UTC 时间戳转换为 EST 日期和时间

标签 php mysql sql twitter timestamp

我已经从 Twitter API 下载了一堆推文。据我了解,(JSON) created_at 属性以 UTC 格式给出(由 +0000 表示):

created_at: Fri Feb 18 21:08:38 +0000 2011

在我的脚本中,我通过使用 PHP 的 strtotime 转换它们将这些日期存储为 unix 时间戳:

strtotime(Fri Feb 18 21:08:38 +0000 2011) = 1298063318

因此,我现在有一个包含推文和 UTC unix 时间戳的表格:

id  nyse_date   nyse_time  twitter_timestamp
-------------------------------------------
1   2011-02-18  16:08:38   1298063318

我收集的所有推文都在谈论纽约证券交易所的股票。纽约证券交易所(显然是在纽约)位于 EST,即 UTC - 5 小时(或:18.000 秒)。因此,在 UTC 时间 2011 年 2 月 18 日 21:08:38 写的推文是在纽约证券交易所时间 2011 年 2 月 18 日星期五 16:08:38 写的。因此,(见表)1298063318 UTC 时间戳被转换为 EST(纽约证券交易所)存储日期和时间。

我现在需要对表中的所有(数百万)推文执行此操作。我可以使用什么查询来自动执行此操作?例如,当我想到 UTC 时间戳时,我感到非常困惑

Fri Feb 18 02:08:38 +0000 2011

在这里,nyse_date 将是 2011-02-17(不是:18)和 nyse_time 21:08:38。

我希望有一些 SQL 的好处,因为这让我很困惑(可能是不必要的,但这是我第一次使用时间戳和时区)

最佳答案

读取数据后,更新 twitter_timestamp 字段,如

update mydata set twitter_timestamp = twitter_timestamp - 5 * 3600;

关于php - 使用 SQL 将 UTC 时间戳转换为 EST 日期和时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10057346/

相关文章:

php - 选择距离最小的随机 GPS 点

php - 为什么服务器有时会提供错误版本的网页?

php - 如何在on语句中添加多个mysql语句

php - MySQL 查询 - 将字符串与集合类型进行比较

sql - 将CSV文件从BLOB导入数据库表

javascript - 动态创建的html中的jquery倒计时

php - 通过 PHP GET 传递 boolean 值

php - 如何防止 SQL 搜索查询返回列没有值的行?

.net - 用户“NT AUTHORITY\ANONYMOUS LOGON”登录失败

php - mysql查询中的多个连接