在Postgres中是否有MySQL功能,我可以将当前时间戳转换为另一个时区?
在Postgres中,我这样做:
SELECT now() AT TIME ZONE 'PST'
并且它自己转换它。我如何在MySQL中执行此操作?无论如何还在吗?
由于
答案 0 :(得分:0)
使用CONVERT_TZ()
进行此操作。
<强>语法强>:
CONVERT_TZ(dt,from_tz,to_tz)
CONVERT_TZ()
将日期时间值dt从from_tz
给出的时区转换为to_tz
给出的时区,并返回结果值。
试试这个:
SELECT CONVERT_TZ(now(),@@session.time_zone,'-08:00');
这是reference。
now()
- 当前时间
@@session.time_zone
- 授予当前时区(本地)
-08:00
- 所需格式。
答案 1 :(得分:0)
我实际上已经解决了! HAH!
无论如何,我用过这个:
SELECT CONVERT_TZ(NOW(),SUBSTRING(TIMEDIFF(NOW(), UTC_TIMESTAMP), 1, 6),'-05:00') AS est_timezone
基本上,查询解释为:
SELECT CONVERT_TZ(NOW(),'-08:00','-05:00') AS est_timezone
我终于获得了当前时区-08:00并将其转换为-05:00。这样,我现在可以继续我之前的查询,使其成为一个视图。