我有一个包含 CreatedDateTime 列的表,如下所示:
[CREATED_DATE_TIME] [datetime] NOT NULL DEFAULT GETUTCDATE()
当我检索创建的日期时间时,它给了我 UTC 的日期时间值,但我想在本地时间显示日期时间值。
如何做到这一点?
期待您的回答并提前致谢。
我有一个包含 CreatedDateTime 列的表,如下所示:
[CREATED_DATE_TIME] [datetime] NOT NULL DEFAULT GETUTCDATE()
当我检索创建的日期时间时,它给了我 UTC 的日期时间值,但我想在本地时间显示日期时间值。
如何做到这一点?
期待您的回答并提前致谢。
尝试如下
— 将 UTC 时间转换为本地时间
DECLARE @UTCDate datetime
DECLARE @LocalDate datetime
DECLARE @TimeDiff int
— 计算 UTC 和本地时间之间的时差
SET @UTCDate = GETUTCDATE()
SET @LocalDate = GETDATE()
SET @TimeDiff = DATEDIFF(hh, @UTCDate, @LocalDate)
— Convert UTC to local time
DECLARE @DateYouWantToConvert datetime
DECLARE @ConvertedLocalTime datetime
SET @DateYouWantToConvert = '4/25/2007 18:00'
SET @ConvertedLocalTime = DATEADD(hh, @TimeDiff, @DateYouWantToConvert)
— Check Results
PRINT @ConvertedLocalTime