SQL Server中AT TIME ZONE转换Altai标准时区的异常问题咨询
问题分析:Altai标准时间在SQL Server
AT TIME ZONE中的偏移异常 核心原因
SQL Server的AT TIME ZONE函数本身不维护时区规则,它直接调用Windows系统的mscorlib.ni!TimeZoneInfo.ConvertTime方法完成转换,结果完全依赖Windows操作系统的时区数据库。
你观察到的2014年初的一小时偏移变化,是阿尔泰地区(Altai)当年官方时区政策的特殊调整导致的:
- 2014年1月1日00:00(当地原时间),阿尔泰地区执行临时时区偏移调整,将时钟回拨1小时,时区偏移从+07:00变为+06:00;
- 当地时间2014年1月1日01:00,偏移立即恢复为+07:00。
这一特殊过渡规则被Windows的时区数据库正确收录,因此AT TIME ZONE返回的结果完全符合当时的官方时区标准,并非函数bug。
验证补充
你通过ETW追踪确认AT TIME ZONE依赖Windows时区接口的结论是准确的,Windows时区数据库中的规则与阿尔泰地区2014年的实际时区变更完全匹配。
内容的提问来源于stack exchange,提问作者Joe Obbish
相关产品推荐
相关产品推荐

