- 这是我的理解:您的源以
VARCHAR
格式存储(而不是 as datetime
)。
- 您想将该自定义格式的字符串源转换为可解析的格式。
试试这些 ms-SQL 语句:
/*****
Your Source is in a custom-format string */
DECLARE @vsInpYYYYDDMM varchar(64)
SET @vsInpYYYYDDMM = '2013-03-09 19:29:25'
/*****
Convert that source YYYY-DD-MM format to YYYY-MM-DD format */
DECLARE @vsActualYYYYMMDD varchar(64)
SET @vsActualYYYYMMDD = substring( @vsInpYYYYDDMM, 1,4) + '-' + substring( @vsInpYYYYDDMM, 9, 2) + '-' + substring(@vsInpYYYYDDMM, 6, 2) + ' ' + substring(@vsInpYYYYDDMM,12,99)
PRINT @vsActualYYYYMMDD + ' is a String'
/*****
Convert that into an actual DATETIME variable */
DECLARE @dtDateVar as datetime
SET @dtDateVar = CONVERT( datetime, @vsActualYYYYMMDD, 120)
PRINT CONVERT(varchar, @dtDateVar, 120) + ' is a DateTime'