我有一个带有CreatedDateTime列的表,如下所示:
[CREATED_DATE_TIME] [datetime] NOT NULL DEFAULT GETUTCDATE()
当我检索创建的日期时间时,它给了我以UTC表示的datetime值,但是我想以本地时间显示datetime值。
如何实现?
期待您的回答并提前致谢。
答案 0 :(得分:1)
尝试如下
—将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