2012-07-10 19 views
1

我有一个调度应用程序,它托管在godaddy的服务器上,并正在亚利桑那州使用。我遇到的问题是时区问题。服务器的时区与用户的时区不同。我想在数据库中完成它,因为我可以通过select GETUTCDATE()获得世界时间。现在我想将它转换为亚利桑那州的时区,因为亚利桑那州的一些地方支持夏令时,有些则不支持。那么有人可以让我知道如何解决这个问题?是否可以在SQL Server中将偏移值添加到世界时?

+2

为什么downvotes ???????????? – 2012-07-10 13:39:31

+0

我同意 - 在这里没有任何解释downvotes是不公平的。 – 2012-07-10 13:52:54

+0

比你想象的更诡计,伙计们。事实证明,亚利桑那州的一小部分每年都有夏令时,但该州大部分地区不使用夏令时。 – LittleBobbyTables 2012-07-10 14:25:19

回答

0

也许您应该尝试创建计算列。

ALTER TABLE <your_table> 
    ADD <your_column> AS (
     DATEADD(
     /*FOR EXAMPLE*/ HOUR, 
     /*OFFSET*/  -5, 
     /*BASE_DATE*/ sysdatetime()) 
    ) 

当然啦,对于偏移您可以指定的值取决于其他列,例如:

ALTER TABLE <your_table> 
    ADD <your_column> AS (
     DATEADD(
     /*FOR EXAMPLE*/ HOUR, 
     /*OFFSET*/  -<date_offset_column>, 
     /*BASE_DATE*/ sysdatetime()) 
    ) 
相关问题