【发布时间】:2021-12-23 10:05:00
【问题描述】:
我正在使用 SAP SQL Anywhere 17 并且有一个我知道是 UTC 的时间戳(没有时区),并且我知道我的客户端浏览器报告的时区是“欧洲/柏林”。
有没有一种简单的方法可以使用 SQL 将 UTC 时间戳转换为该时区的本地时间戳?假设我已经有created the timezone
CREATE TIME ZONE "Europe/Berlin" OFFSET '01:00' DST OFFSET '01:00' DST STARTING 'Mar/last Sun' AT '02:00' DST ENDING 'Oct/last Sun' AT '02:00';
我想可以使用 SYSTIMEZONE 视图手动执行此操作,但处理所有特殊情况需要几个小时的艰苦工作!也许有人已经这样做了,或者 Anywhere 提供了我在文档中忽略的系统功能。
请注意,问题在于找出 DST 在任意 UTC 时间戳是否处于活动状态。例如,如果时间戳是未来 6 个月,则仅使用 当前 偏移量会产生错误的结果!
【问题讨论】:
标签: sql datetime timezone sqlanywhere