SQL Server에서 mmddyyyy VARCHAR를 DATETIME으로 변환 처리
SQL Server에서 mmddyyyy 형식의 문자열을 DATETIME으로 직접 변환하면 오류가 발생하는 경우가 많습니다. 이는 표준 CONVERT
함수가 특정 날짜 형식을 기대하기 때문입니다. 이 기사는 이러한 일반적인 문제에 대한 강력한 솔루션을 제공합니다.
신뢰할 수 있는 방법은 다음과 같습니다.
<code class="language-sql">DECLARE @Date VARCHAR(8) SET @Date = '12312009' SELECT CONVERT(DATETIME, RIGHT(@Date, 4) + '-' + LEFT(@Date, 2) + '-' + SUBSTRING(@Date, 3, 2))</code>
이 코드의 기능은 다음과 같습니다.
RIGHT
함수는 연도(마지막 4자)를 추출합니다.LEFT
함수는 월(처음 두 문자)을 추출합니다.SUBSTRING
은 날짜(문자 3과 4)를 추출합니다.yyyy-mm-dd
문자열을 만듭니다.CONVERT
은 이 문자열을 DATETIME 값으로 변환합니다.이 기술은 SQL Server의 DATETIME 해석을 위해 문자열 구성 요소를 올바른 순서로 명시적으로 재배열하여 범위를 벗어난 오류를 효과적으로 해결함으로써 간단한 CONVERT
의 한계를 극복합니다. 이렇게 하면 mmddyyyy 문자열을 DATETIME 데이터 유형으로 정확하고 안정적으로 변환할 수 있습니다.
위 내용은 SQL Server에서 mmddyyyy VARCHAR 문자열을 DATETIME으로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!