Как в TSQL сконвертировать время заданное в виде строки с timezone в datetime?
Как в TSQL сконвертировать время заданное в виде строки с timezone в datetime?
SELECT CONVERT(datetime, '2006-12-12T23:45:12.000-08:00', 127)
Conversion failed when converting date and/or time from character string.
Ответы (1 шт):
Автор решения: Yitzhak Khabinsky
→ Ссылка
Пожалуйста, попробуйте следующее решение.
SQL Server 2016 и более поздние версии.
SQL
-- DDL and sample data population, start
DECLARE @var DATETIMEOFFSET(3) = '2006-12-12T23:45:12.000-08:00';
-- DDL and sample data population, end
SELECT @var AS [Before]
, CAST(@var AS DATETIME) AS [After]
, @var AT TIME ZONE 'Russian Standard Time' AS [Local]
, CAST(@var AT TIME ZONE 'Russian Standard Time' AS DATETIME) AS [LocalDateTime];
SELECT * FROM sys.time_zone_info
ORDER BY name;
SELECT @@VERSION;