반응형
MSSQL에서 ISNUMERIC을 사용해
특정 값이 숫자인지 문자인지 판별할 수 있는데
사용방법은
ISNUMERIC(값) = 0
- 값이 문자인지 확인
ISNUMERIC(값) = 1
- 값이 숫자인지 확인
ISNUMERIC은 단독으로 사용할 수 없기에
IIF, CASE WHEN과 같은
조건이 필요한 곳에 사용하게 된다
위 예제를 보면
IIF 안에서 ISNUMERIC(값) = 0 의 경우
문자일 경우 TRUE, 아닐 경우 FALSE
ISNUMERIC(값) = 1 의 경우
숫자일 경우 TRUE, 아닐 경우 FALSE가 떨어져
NOT_NUMERIC, NUMERIC으로 출력이 되는 것이 보인다
예제에 사용한 코드는 아래와 같다
SELECT IIF(ISNUMERIC('') = 0, 'NOT_NUMERIC', 'NUMERIC') AS NUMERIC_CHK1,
IIF(ISNUMERIC('0.1') = 1, 'NUMERIC', 'NOT_NUMERIC') AS NUMERIC_CHK2,
IIF(ISNUMERIC('123.523') = 1, 'NUMERIC', 'NOT_NUMERIC') AS NUMERIC_CHK3,
IIF(ISNUMERIC('12가나다34') = 1, 'NUMERIC', 'NOT_NUMERIC') AS NUMERIC_CHK4
반응형
'Error & Fix' 카테고리의 다른 글
MSSQL TOP을 이용한 N개의 행 출력방법 (0) | 2020.04.09 |
---|---|
MSSQL CASE WHEN 사용방법 및 예제 (0) | 2020.04.09 |
MSSQL REPLACE를 이용한 문자열 변환방법 및 예제 (0) | 2020.04.08 |
MSSQL IIF 사용법 및 예제 (0) | 2020.04.07 |
MSSQL ISNULL로 NULL, NOT NULL 체크 및 사용방법 (0) | 2020.04.07 |
댓글