yyyymmddhhmmss + offset (20151125175706 + 0800)을 SQL Server의 datetime 형식으로 변환하려면 어떻게해야합니까? 마지막 1 분 동안 테이블에 입력 된 레코드를 선택하기 위해 날짜/시간 비교에 사용할 수있는 항목.varchar (예 : 20151125175706 + 0800)를 SQL의 Datetime으로 변환
메신저 OBX 세그먼트에서이 형식을 가져 오는 중이고 테이블의 varchar 필드에 그대로 저장하고 있습니다.
나는 (무엇보다도)이 작업을 수행하려고 : 이select cast(convert(varchar, SUBSTRING(OBXDateTime, 1, 4) + '-' +
SUBSTRING(OBXDateTime, 5, 2) + '-' +
SUBSTRING(OBXDateTime, 7, 2) + ' ' +
SUBSTRING(OBXDateTime, 9, 2) + ':' +
SUBSTRING(OBXDateTime, 11, 2) + ':' +
SUBSTRING(OBXDateTime, 13, 2), 101) as datetime) from ObservationPatInfo
이 쿼리는 테이블에 1020 행 중 단지 522 행을 제공하고 "는 VARCHAR 데이터 유형의 변환을 말하는 오류 메시지로 제공 datetime 데이터 형식이 범위를 벗어난 값을 가져 왔습니다. "
친절하게 해결하도록 도와주세요.
가능한 중복. http://stackoverflow.com/questions/30877285/how-can-i-reliably-convert-yyymmddhhmmssoffset-to-a-date-time –