如何根据用户时区更改日期和时间

时间:2015-01-20 10:01:38

标签: mysql asp.net sql-server sql-server-2008

我确实有一个要求,比如说如果芝加哥上午8点(星期五),那么同一时间将是新加坡时间晚上9点(星期五),因为这一天仍然是相同的,但如果时间在芝加哥是晚上8点(周五),新加坡的时间与上午9点(周六)相同。

我可以通过在SQL

中使用以下函数来完成日期更改
dateadd(mi, 840, dateadd(hh, -1, '2015-01-30 08:00:00.000')

其中840是新加坡的偏移时间,-1是tzAdjust和2015-01-30 08:00:00.000是芝加哥的日期时间 但是如何将这一天转换成上面我没有得到那个。

1 个答案:

答案 0 :(得分:0)

这样的事情有用吗?

DECLARE
     @TimeHere DATETIME2(3)
    ,@OffsetMinutes INT

SELECT
     @TimeHere = GETDATE()
    ,@OffsetMinutes = 840

SELECT
    DATEADD(MINUTE,@OffsetMinutes,@TimeHere)    AS TimeThere