Background Image
조회 수 21121 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
일반적으로 숫자를 사용하는 컬럼은 int, numeric, double 등의 데이타 타입을 사용합니다.

그러나, 간혹 DB설계자가 숫자타입의 컬럼을 문자형으로 설계하는 경우가 있습니다.
이럴 경우에 문자타입의 컬럼을 숫자타입으로 변경하기를 권장합니다.

그러나, 테이블에 많은양의 데이타가 있을 경우에는 오류데이타(문자데이타, 특수문자 등)를 걸러내야 합니다.

아래의 내용은 특정컬럼 내에서 숫자 이외의 값이 있는 데이타를 select 하는 예제이며,
자료변환 또는 오류데이타 검증 등에 참고하면 됩니다.

테스트 테이블 생성 및 데이타 입력

DROP TABLE tbl;


CREATE TABLE tbl ( col1 int, col2 VARCHAR(100) );


INSERT INTO tbl (col1, col2 ) VALUES ( 1,'1');

INSERT INTO tbl (col1, col2 ) VALUES ( 2,'7');

INSERT INTO tbl (col1, col2 ) VALUES ( 3,'8');

INSERT INTO tbl (col1, col2 ) VALUES ( 4,'1,000');

INSERT INTO tbl (col1, col2 ) VALUES ( 5,'1,200,300');

INSERT INTO tbl (col1, col2 ) VALUES ( 6,' ');

INSERT INTO tbl (col1, col2 ) VALUES ( 7,'');

INSERT INTO tbl (col1, col2 ) VALUES ( 8,'0');

INSERT INTO tbl (col1, col2 ) VALUES ( 9,'!');

INSERT INTO tbl (col1, col2 ) VALUES (10,'^');

INSERT INTO tbl (col1, col2 ) VALUES (11,'&');

INSERT INTO tbl (col1, col2 ) VALUES (12,'ㄱ');

INSERT INTO tbl (col1, col2 ) VALUES (13,'x');

INSERT INTO tbl (col1, col2 ) VALUES (14,'x12');

INSERT INTO tbl (col1, col2 ) VALUES (15,'ㄱ123');

INSERT INTO tbl (col1, col2 ) VALUES (16,'123ㄱ098');

INSERT INTO tbl (col1, col2 ) VALUES (17,'123.0'); 


--정수 외의 데이타를 확인(소수점 데이타도 오류데이타)

SELECT * 

FROM tbl 

WHERE (col2 REGEXP '[^0123456789]') = 1;



--정수, 실수 외의 데이타를 확인

SELECT * 

FROM tbl 

WHERE (col2 REGEXP '[^0123456789.]') = 1;







List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
99 질의작성 한건의 데이타를 여러건으로 조회하는 쿼리입니다. 권호일 2012.03.30 9419
98 질의작성 세부내역과 소계를 한개의 쿼리문장으로 수행하는 SQL 권호일 2012.03.31 14092
97 마이그레이션 데이터베이스 마이그레이션(unloaddb & loaddb) 의 효과적인 수행방법 file cubebridge 2012.04.14 24548
96 운영관리 CUBRID 에서의 사용자 권한관리 방법 file cubebridge 2012.04.14 23652
95 마이그레이션 CUBRID Migration Tookit 8.4.1 file cubebridge 2012.04.14 11081
94 CUBRID 매니저 CUBRIDManager의 접속 정보 이관 file cubebridge 2012.04.14 12383
93 질의작성 문자(char, varchar)로 설계한 날짜데이타 검증하기 권호일 2012.04.27 17829
92 질의작성 게시판 응용 중 조회수로 정렬하는 경우 인덱스 생성 방법 1 손승일 2012.06.23 13905
91 운영관리 데이터 입력 중 디스크 공간 부족 오류가 발생하였을 때, 복구 방법 이용미 2012.06.30 14331
90 운영관리 Windows 서버에서 [장치에 쓰기 캐싱 사용] 설정/해제에 따른 성능 차이 이용미 2012.06.30 20231
89 기타 전자정부 표준프레임워크 CUBRID 사용 방법 문의 참조 cubebridge 2012.09.17 20600
88 운영관리 CUBRID에서의 BLOB/CLOB 사용시 백업 및 복구에 대한 주의 점 cubebridge 2012.09.18 33157
87 마이그레이션 오라클의 order by 시 first와 last 대체 사용법 file cubebridge 2012.11.12 20576
86 응용개발 오라클 to CUBRID로 마이그레이션 수행 시 주의사항 cubebridge 2012.11.12 16642
85 마이그레이션 MySQL에서 CUBRID로 갈아탈 때 알아야 할 것 cubebridge 2012.11.13 22616
84 응용개발 CUBRID-PHP-Driver 연동가이드 file cubebridge 2012.11.13 17136
83 CUBRID 매니저 CUBRID와 CUBRID Web Manager설치, 그리고 XE의설치 및 연동까지 file cubebridge 2012.11.13 18099
82 마이그레이션 MySQL+XE를 CUBRID+XE로 운영하기 – mysqldump파일과 CMT사용 file cubebridge 2012.11.13 23071
81 질의작성 join update 처리방법입니다.(연관성 있는 테이블을 조인하여 처리하는 UPDATE 구문) 권호일 2012.11.30 20393
» 질의작성 오류데이타검증 - 숫자 이외의 데이타 확인하는 방법 권호일 2013.01.17 21121
Board Pagination Prev 1 ... 5 6 7 8 9 10 11 12 13 14 Next
/ 14

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales