반응형
MSSQL에서 아래의 두 에러는
sum 연산자에 대한 피연산자 데이터 형식 varchar이(가) 잘못되었습니다
sum 연산자에 대한 피연산자 데이터 형식 nvarchar이(가) 잘못되었습니다
모두 동일한 문제인데
문자열은 SUM을 할 수가 없는데
SUM을 하려했기에 에러가 뜨는 것이다
하지만 'ㅁㄴㅇ'가 아닌 '123' 이런 식으로
항상 숫자가 들어와서 SUM해줄 경우에는
정수일 경우
SUM(CONVERT(INTEGER, 컬럼))
실수일 경우
SUM(CONVERT(FLOAT, 컬럼))
만약 숫자와 문자가 섞여있을 경우에는
IIF(ISNUMERIC(값) = 1, SUM(CONVERT(INTEGER, 컬럼)), 0)
이렇게 사용해주면 된다
반응형
'Error & Fix' 카테고리의 다른 글
MSSQL WHERE 절에 IF 형식으로 AND 추가방법 (0) | 2020.04.16 |
---|---|
MSSQL nvarchar 값을(를) 데이터 형식 int(으)로 변환하지 못했습니다 해결방법 (0) | 2020.04.10 |
MSSQL TOP을 이용한 N개의 행 출력방법 (0) | 2020.04.09 |
MSSQL CASE WHEN 사용방법 및 예제 (0) | 2020.04.09 |
MSSQL ISNUMERIC으로 숫자 문자 판별방법 및 예제 (0) | 2020.04.09 |
댓글