当前位置:  开发笔记 > 数据库 > 正文

确定T-SQL中的时区偏移量

如何解决《确定T-SQL中的时区偏移量》经验,为你挑选了0个好方法。

我的数据库应用程序将部署在不同时区的多个站点.

我需要一个T-SQL函数来确定当前年1月1日午夜的UTC时间戳,用于YTD计算.所有数据都以UTC时间戳存储.

例如,芝加哥是夏令时(DST)的UTC-6,如果在2008年芝加哥任何时候运行,该功能需要返回'2008-01-01 06:00:00'.如果明年在纽约(GMT-5 + DST)运行,则需要返回'2009-01-01 05:00:00'.

我可以从YEAR获得当前年份(GETDATE()).我以为我可以在GETDATE()和GETUTCDATE()之间做一个DATEDIFF来确定偏移量,但结果取决于查询是否在DST期间运行.我不知道有任何内置的T-SQL函数来确定偏移量或者当前时间是否为DST?

有没有人在T-SQL中解决这个问题?我可以硬编码或将其存储在一个表中,但不愿意.我想这是在SQL Server 2005中使用CLR集成的完美情况.我只是想知道是否有一个我不知道的T-SQL解决方案?

推荐阅读
我我檬檬我我186
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有