TSQL:如何将格林威治标准时间2013年10月17日00:00:00转换为日期或日期时间
答案 0 :(得分:0)
假设不需要在时区之间进行转换,您可以使用以下TSQL:
DECLARE @DateText NVARCHAR(28)
SET @DateText = 'Thu Oct 17 00:00:00 GMT 2013'
SELECT CONVERT(DATETIME, SUBSTRING(@DateText,9,3) + SUBSTRING(@DateText,5,4) + SUBSTRING(@DateText,25,4) + SUBSTRING(@DateText,11,9), 113) "DATETIME",
CONVERT(DATE, SUBSTRING(@DateText,9,3) + SUBSTRING(@DateText,5,4) + SUBSTRING(@DateText,25,4), 106) "DATE"
答案 1 :(得分:0)
使用以下脚本。
DECLARE @input NVARCHAR(28)
SET @input = 'Thu Oct 17 00:00:00 GMT 2013'
SELECT CAST(SUBSTRING(REPLACE(@input,' GMT',''),5,LEN(@input))as Datetime) [DATETIME],
CAST(CAST(SUBSTRING(REPLACE(@input,' GMT',''),5,LEN(@input))as Datetime)as DATE) [DATE]
您还可以使用“FORMAT
”功能将输入转换为日期。
SELECT FORMAT(CAST(SUBSTRING(REPLACE(@input,' GMT',''),5,LEN(@input)) as datetime),'yyyy-MM-dd') [Date]