我有两张带时间戳的桌子
TABLE1 当地时间有TIME_STAMP
TABLE2 使用UTC中的TIME_STAMP
我需要做点什么
select count(*) from TABLE1 where TIME_STAMP > TABLE2.TIME_STAMP
Run Code Online (Sandbox Code Playgroud)
问题是这个应用程序将部署在多个时区,所以我不能使用以下
SELECT CONVERT_TZ(TABLE2.TIME_STAMP,'EST','UTC')
Run Code Online (Sandbox Code Playgroud)
因为' EST'可以是任何时区.
有没有办法获取本地时区代码并将其替换为第二个参数?或者是否有更好,更直接的方法来解决我的问题?
注意:TABLE1和TABLE2 TIME_STAMPS必须分别保留为本地和UTC,因为它们是我无法控制的外部...
sto*_*_to 12
这是我实施的解决方案:
这将把NOW从本地时区转换为UTC
SELECT CONVERT_TZ( NOW(), @@session.time_zone, '+00:00' )
这会将任何给定的TIMESTAMP字符串从本地时区转换为UTC
SELECT CONVERT_TZ( "2012-02-14 16:44:36", @@session.time_zone, '+00:00' )
| 归档时间: |
|
| 查看次数: |
11490 次 |
| 最近记录: |