본문 바로가기
Error & Fix

MSSQL nvarchar 값을(를) 데이터 형식 int(으)로 변환하지 못했습니다 해결방법

by wakestand 2020. 4. 10.
반응형

nvarchar 값을(를) 데이터 형식 int(으)로 변환하지 못했습니다

varchar 값을(를) 데이터 형식 int(으)로 변환하지 못했습니다

 

위의 두 에러는 MSSQL에서

CASE WHEN을 사용할 경우 주로 발생하는데

 

MSSQL CASE WHEN 사용방법 및 예제

MSSQL에서 CASE WHEN을 통해 IF ~ ELSE IF ~ ELSE 문을 만들 수 있는데 사용방법은 CASE WHEN 조건 1 THEN 조건 1이 맞을 시 값 WHEN 조건 2 THEN 조건 2가 맞을 시 값 ELSE 값 END 이런 식으로 사용하는데 WHEN..

wakestand.tistory.com

경우에 따라 뱉는 데이터타입이 달라서 생기는 에러다

 

이 문제를 해결하기 위해서는

데이터타입을 모두 동일하게 만들어 줘야 하는데

 

일반적으로는 CONVERT를 사용해서

위 스크린샷의 예제와 같이

 

CONVERT(데이터타입, 값);

이런식으로 변환해서 사용해주면 된다

대부분은 문자를 숫자로 변환하는 과정에서 에러가 나니

 

CONVERT(FLOAT, 값) 이렇게 사용해주면 되겠다

반응형

댓글