반응형
MSSQL에서 특정문자열 값이 숫자유무인지 확인 하기 위해서는 ISNUMERIC함수를 사용하면 확인 가능합니다.
함수명 | 구문 | 설명 |
ISNUMERIC | ISNUMERIC(expression) | 숫자데이터인 경우 : 1 반환 숫자데이터가 아닌경우 : 0 반환 |
데이터별 처리 결과값
실제쿼리문으로 결과값이 어떻게 나오는지 테스트 해보겠습니다.
1
2
3
4
5
6
|
SELECT ISNUMERIC(1234) '1234',ISNUMERIC(-1234) '-1234',
ISNUMERIC('0.1234') '0.1234',ISNUMERIC('-11133.1234') '-11133.1234',
ISNUMERIC('\5000') '\5000', ISNUMERIC('$1.50') '$1.50',ISNUMERIC('-$1.50') '-$1.50',
ISNUMERIC('2011-01-01') '2011-01-01',ISNUMERIC('abc123') 'abc123',
ISNUMERIC(' 123') ' 123', ISNUMERIC('123 ') '123 ',ISNUMERIC('1 23') '1 23',
ISNUMERIC('abc123cc') 'abc123cc',ISNUMERIC('0x12') '0x12'
|
쿼리실행결과 입니다.
숫자, 소숫점, 부호있는데이터, 통화값의 경우에도 숫자형으로 인식하여 결과값이 1로 나오는 부분을 확인 할 수 있습니다. 문자열의 경우는 ' 123', '123 '와 같이 공백이 앞 뒤에 있을경우에는 결과값이 1로 '1 23'와 같이 중간에 스페이스가 있을경우는 문자열로 인식하는 부분을 확인 할 수 있습니다.
통화값에도 숫자형으로 입력되는 부분과 공백이 있을경우에 상황에 따라 숫자로 인식하는 경우와 문자로 인식하는 경우가 있으니 해당부분을 주의해서 사용하시기 바랍니다.
'프로그래밍 > DB' 카테고리의 다른 글
[DB] postgresql DB구축하기 (0) | 2023.06.04 |
---|---|
[DB] MSSQL 프로시저 분기처리(continue,break,goto,return) (0) | 2023.02.27 |
[DB] MSSQL 동의어(시노님) 사용 방법 (0) | 2023.02.18 |
[DB] MSSQL 요일 정보 (datename, datepart), 요일 한글 함수 (0) | 2022.08.31 |
[DB] MSSQL 사용자정의 함수 만들기 (0) | 2022.08.30 |